public delegate function sqlop(byval psql as string) as dataset
private sub button1_click(byval sender as system.object, byval e as system.eventargs) handles button1.click
dim b as sqlop = new sqlop(addressof runsql)
dim itfar as iasyncresult = b.begininvoke("select * from tbuser", new asynccallback(addressof addcomplete), "新增完成!")
end sub
sub addcomplete(byval itfar as iasyncresult)
dim ar as asyncresult = ctype(itfar, asyncresult)
dim b as sqlop = ctype(ar.asyncdelegate, sqlop)
myds = ctype(b.endinvoke(itfar), dataset)
console.writeline("結果正確!")
dim msg as string = ctype(itfar.asyncstate, string)
console.writeline(msg)
end sub
function runsql(byval psql as string) as dataset
dim m_connectionstring as string = string.empty
'建立乙個oledbconnection物件
dim m_connection as new sqlconnection
dim m_command as new sqlcommand
trym_connection.connectionstring = "data source=wangli;initial catalog=newdb;persist security info=true;user id=sa; password=sa;asynchronous processing=true"
'用sqlconnection物件和資料庫開啟連線
m_connection.open()
'定義command物件將執行sql
m_command.connection = m_connection
m_command.commandtype = commandtype.text
m_command.commandtext = psql
dim ds as new dataset
dim da as new system.data.sqlclient.sqldataadapter
da.selectcommand = m_command
da.fill(ds)
return ds
catch ex as exception
throw new exception(ex.message)
return nothing
finally
'關閉sqlconnection物件
m_connection.close()
end try
end function
資料庫之三正規化
如果不想看理論性的數的話,又想重溫一下資料庫知識,又是日本動漫迷的話,可以看一下 作為漫畫和專業知識結合在一起的點子十分有創意,而且讀起來也有趣。資料庫通過e r,entity relationship模型進行資料庫的設計,根據具體的關係。一對多,乙個職員對多個客戶。如果只有乙個職員。多對一,反過來...
資料庫之三正規化
第一正規化 無重複的列 定義 資料庫表的每一列都是不可分割的原子資料項,而不能是集合,陣列,記錄等非原子資料項。如果實體中的某個屬性有多個值時,必須拆分為不同的屬性 通俗解釋 乙個欄位只儲存一項資訊 eg 班級 高三年1班,應改為2個字段,乙個年級 乙個班級,才滿足第一正規化 不滿足第一正規化 第二...
資料庫學習之三
decode的使用 多表,intersect交集 minus減集 union並集 union all 並集不去重 在表中將每一條資料看成乙個元素,元素的段必須相同 求薪水排名前6 10的人 採用decode函式 count計數函式 group by分組函式 掌握兩個表的連線方式 第乙個表的每一條資料...