2013-10-12 2 views
0

В выпуске SQL Server Compact, как вы определяете целое число при создании базы данных программно? Я пробовал int, Int32, Bigint, ни один из них не работает, все они бросают исключение, говоря, что тип данных недопустим?Исключение SQL Server Compact исключение из-за неизвестного типа данных?

string createTable6 = "CREATE TABLE Gates (Gate1In Bigint(5), Gate1Out Bigint(5), Gate2In Bigint(5), Gate2Out Bigint(5), Gate3In Bigint(5), Gate3Out Bigint(5), Gate4In Bigint(5), Gate4Out Bigint(5), Gate5In Bigint(5), Gate5Out Bigint(5))"; 

SqlCeConnection connexion6 = new SqlCeConnection(connectionString); 
SqlCeCommand table6 = new SqlCeCommand(createTable6, connexion6); 

try 
{ 
    connexion6.Open(); 
    table6.ExecuteNonQuery(); 
} 
catch (Exception ex) 
{ 
    MessageBox.Show(ex.ToString()); 
} 

connexion6.Close(); 

ответ

1

Просто используйте bigint без круглых скобок

string createTable6 = "CREATE TABLE Gates (Gate1In bigint, Gate1Out bigint, " + 
     "Gate2In bigint, Gate2Out bigint, Gate3In bigint, Gate3Out bigint, " + 
     "Gate4In bigint, Gate4Out bigint, Gate5In bigint, Gate5Out bigint)"; 

Однако он должен работать также с int. И если вы на самом деле не нужно все, что целое пространство (8 байт), вы можете использовать Интс

1

Это факт, что вы есть круглые скобки после объявления типа данных:

Попробуйте это:

string createTable6 = "CREATE TABLE Gates (Gate1In Bigint, Gate1Out Bigint, Gate2In Bigint, " + 
     "Gate2Out Bigint, Gate3In Bigint, Gate3Out Bigint, Gate4In Bigint, Gate4Out Bigint, " + 
     "Gate5In Bigint, Gate5Out Bigint)"; 
Смежные вопросы