2013-06-18 77 views
-3

我在創建表語句時總是出錯。在創建表語句時出錯

try{ 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 

Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=D:/my project/apache-tomcat-7.0.41/odbcdsn name.mdb" 
    ); 

Statement st=conn.createStatement(); 

st.executeUpdate("CREATE TABLE appr (_name varchar(10),_fname varchar(10),gender varchar(1),cat varchar(10),emp varchar(3),pno integer(10),_cno integer(10),email varchar(30),address varchar(40), pno integer(6),boe varchar(6),tot integer(3),ttl integer(3))"); 

有人可以幫我解決這個問題嗎?

+2

你得到了什麼錯誤? –

+0

歡迎來到StackOverflow。你能告訴我們你得到了什麼「例外」嗎?沒有'Exception'和堆棧跟蹤,它很難幫助你。 –

回答

0

那麼,你得到的錯誤信息是有關的問題是什麼很清楚:

Msg 2716, Level 16, State 1, Line 1 
Column, parameter, or variable #6: Cannot specify a column width on data type int. 

所以,試試這個:

CREATE TABLE dbo.appr (
    _name VARCHAR(10), 
    _fname VARCHAR(10), 
    gender VARCHAR(1), 
    cat VARCHAR(10), 
    emp VARCHAR(3), 
    pno INTEGER, 
    _cno INTEGER, 
    email VARCHAR(30), 
    address VARCHAR(40), 
    ___pno INTEGER, 
    boe VARCHAR(6), 
    tot INTEGER, 
    ttl INTEGER 
); 

我剛剛更換INTEGER與INTEGER(?)。你需要找出你真正想要的數據類型。你可以從這裏開始:http://msdn.microsoft.com/en-us/library/ms187752.aspx

也有在你的表中的重複的列名,有趣的是使用不同的數據類型......我取代其中一人___pno