2009-06-30 13 views
10

मैं अपने (SQL 2005) SchemaExport का उपयोग कर डाटाबेस के लिए एक स्कीमा genereated गया है, और यह एक मेजत्रुटि - "एक उच्च मूल्य नहीं पढ़ सकते थे - आप तालिका पॉप्युलेट करने के लिए की जरूरत है"

CREATE TABLE [dbo].[hibernate_unique_key](
    [next_hi] [int] NULL 
) ON [PRIMARY] 
बनाया

जब मैं किसी इकाई को जोड़ने का प्रयास करता हूं, तो मुझे त्रुटि मिलती है "हाय मान नहीं पढ़ा जा सकता - आपको तालिका को पॉप्युलेट करने की आवश्यकता है"। मेरा क्या मतलब है?

संपादित करें: मैंने तालिका में 1 डाला है, और ऐसा लगता है। क्या यह सही मूल्य है?

उत्तर

24

NHibernate कि उस तालिका में मौजूदा उच्च मूल्य संग्रहीत करता है एक मूल्य को खोजने के लिए उम्मीद है, यानी यह पहले की तरह कुछ चलता है:

current_hi = [SELECT max(next_hi) FROM hibernate_unique_key]. 

तो तुम सब करने की जरूरत है बीज है कि एक प्रारंभिक संख्या के साथ तालिका, यानी :

INSERT INTO hibernate_unique_key(next_hi) VALUES (0)