下面我有一段代碼應該寫出來自我的數據庫的列,但是當我嘗試執行時,它給了我一個例外,說它無法讀取沒有列的列值,但它的錯誤,因爲它應該包含我希望信息出來的列中的日期。從SQL Server將信息寫入C#
下面是表的定義:
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE
PATRICK_DEV dbo FILE_DATE_PROCESSED BASE TABLE
下面是代碼:
try
{
SqlConnection connect = new SqlConnection("Server=OMADB01;Database=PATRICK_DEV;Trusted_Connection=True;");
connect.Open();
SqlCommand command = new SqlCommand("INSERT FILE_DATE_PROCESSED(UID, FILE_DATE_PROCESSED, FILE_NAME, DATE_ENTERED) SELECT newid(), '2015-12-31 19:32:45', 'myfilename.txt', getdate()", connect);
SqlDataReader reader = null;
reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(reader["FILE_DATE_PROCESSED"].ToString());
Console.WriteLine(reader["DATE_ENTERED"].ToString());
}
connect.Close();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
這是我處理的,現在什麼:我在SQL數據庫中,看起來像這樣:
UID FILE_DATE_PROCESSED FILE_NAME DATE_ENTERED
在這個數據庫中,每次我添加一個文件時,第2列應該包含上次輸入的內容編輯文件,第4列應包含我現在輸入文件的時間。這就是我要尋找的結果:
UID FILE_DATE_PROCESSED FILE_NAME DATE_ENTERED
random random date the file name the current date
number
如果沒有解決這個問題比我已經發布了,請讓我知道,我會非常感激的方式不同。
您正在執行INSERT操作,沒有任何可讀的信息 – Steve
要獲取表定義,請使用'SELECT * FROM information_schema.tables',並且應該爲您提供表的列表。如果你需要一個完整的獨立查詢來獲取表定義,請參考http://stackoverflow.com/questions/6215459/t-sql-query-to-show-table-definition –
@Steve後面有一個select語句插入語句。很難看,因爲如果你不滾動它被切斷。 – Mark