数据库|mysql教程
,操作,数据库,ACCESS,图片,声音,
数据库-mysql教程
易语言php加密模块源码下载,ubuntu连不了外网,椰土爬虫时间,php memched,seo微整lzw
由于图片,声音不能直接存储,这里就要用到数据流方式了。对于.NET中的一些术语概念我仍然很迷糊,在学习中。主要我不是专业的, 只是开始学了点VB6代码,然后就用了,所以目前只是会写点代码,却不知道原理,很惭愧。 哎哟,走题了,赶紧回来,不好意
味美多网址导航源码,.wubi.装ubuntu,爬虫服务分发url,nesbot php,seo手机查询lzw
电玩娱乐城源码,ubuntu页面启动栏,属于Tomcat弱口令的是,高德api爬虫,php判断上传图片大小,区域网站seolzw
由于图片,声音不能直接存储,这里就要用到数据流方式了。对于.NET中的一些术语概念我仍然很迷糊,在学习中。主要我不是专业的,
只是开始学了点VB6代码,然后就用了,所以目前只是会写点代码,却不知道原理,很惭愧。
哎哟,走题了,赶紧回来,不好意思!
好吧,我们先看看图片和声音的存储和读取。看下代码。
’这段代码是插入图片和声音的代码
’第一个就是图片了,path当然是图片的地址了
Picturebyte = puter.FileSystem.ReadAllBytes(PicturePath)
’下面这个就是声音咯,voicepath自然还是声音地址了
Voicebyte = puter.FileSystem.ReadAllBytes(VoicePath)
‘这里就开始照旧写SQL,区别以前的地方就是这里是用COMMAND的一个参数来赋值
str = New System.Text.StringBuilder
str.Append(” INSERT INTO WORDINFO ([PICTURE],[ENGLISHNAME],[CHINESENAME],[VOICE],[Class]) “)
str.Append(” VALUES(?,?,?,?,?)”)
cmd = New OleDb.OleDbCommand(str.ToString, DBConnection)
cmd.Parameters.Add(New OleDb.OleDbParameter)
cmd.Parameters(0).Value = Picturebyte
cmd.Parameters.Add(New OleDb.OleDbParameter)
cmd.Parameters(1).Value = EnglishName
cmd.Parameters.Add(New OleDb.OleDbParameter)
cmd.Parameters(2).Value = ChineseName
cmd.Parameters.Add(New OleDb.OleDbParameter)
cmd.Parameters(3).Value = Voicebyte
cmd.Parameters.Add(New OleDb.OleDbParameter)
cmd.Parameters(4).Value = Classstring
cmd.ExecuteNonQuery()’sql写完了就开始执行
DBConnection.Close()
MsgBox(“Save OK”, MsgBoxStyle.Information)
看看上面的代码是不是很简单了?就这样就可以存储进数据库咯,我这里还是用ACCESS来演示的,sql之类的还要简单。
行了,不说别的了,继续实行功能吧,其他的问题我放在最后交代。
下面我们来看看如何读取,看代码。(怎么有点像武侠上看刀一个味?呵)
Dim Englishname As String
Dim Picturebyte() As Byte
Dim Voicebyte() As Byte
Dim stream As New ADODB.Stream
Englishname = Trim(SearchTBox.Text)
If Englishname “” Then
DBConnection.ConnectionString = DB_CnStr()
DBConnection.Open()
‘开始查询
Dim sql As New System.Text.StringBuilder
sql.Append(” SELECT * FROM WORDINFO”)
sql.Append(” WHERE ENGLISHNAME=”).Append(Englishname).Append(“‘”)
Dim cmd As New OleDb.OleDbCommand(sql.ToString, DBConnection)
Dim RS As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(cmd)
Dim DT As New DataTable
RS.Fill(DT)
DBConnection.Close()
‘有查到则显示出来
If DT.Rows.Count = 0 Then
MsgBox(“No Record “, MsgBoxStyle.Critical, “Error”)
Exit Sub
Else
‘界面初始化
Modifybtn.Enabled = True
Deletebtn.Enabled = True
‘EnglishNameTBox.Enabled = True
ChineseNameTBox.Enabled = True
ClassTbox.Enabled = True
InsertPicLinkLab.Enabled = True
InsertVoiceLinkLab.Enabled = True
TestLinkLab.Enabled = True
RecordLinkLab.Enabled = True
Printbtn.Enabled = True
SearchTBox.Text = “”
’上面你可以不要看了,关键来咯,下面是开始显示图片
Picturebyte = DT.Rows(0).Item(1)
PictureBox1.Image = Bitmap.FromStream(New IO.MemoryStream(Picturebyte, True), True)
EnglishNameTBox.Text = DT.Rows(0).Item(2).ToString
ChineseNameTBox.Text = DT.Rows(0).Item(3).ToString
ClassTbox.Text = DT.Rows(0).Item(5).ToString
‘这里是取出声音文件了,需要交代的是,我研究了很久(套用行家台词),没找到好的方法,
‘好像只能先把声音文件暂存出来,然后你去播放之类的动作。不知道能不能直接播放流文件,
’或者有其他的方法,这个是刚刚想到的,呵呵,以后去尝试下。
With stream
.Mode = ADODB.ConnectModeEnum.adModeReadWrite
.Type = ADODB.StreamTypeEnum.adTypeBinary
.Open()
.Write(DT.Rows(0).Item(4))
.SaveToFile(“c:/test.wav “, ADODB.SaveOptionsEnum.adSaveCreateOverWrite)
End With
VoiceTBox.Text = “c:/test.wav “
End If
Else
MsgBox(“English Name is empty”, MsgBoxStyle.Critical, “Error”)
End If
OK,上面一些话呢就是说了下存储和读取了,其他的更新之类的就不要说了吧?我想大家肯定比我还聪明。
不知道这样用代码来说,能不能帮助到大家清楚这些操作方法呢,希望大家能和我交流,我的空间里有联系方式。
最后呢,我还要啰嗦下,其实图片和声音之类的文件太大,或者你的程序中用到很多的话,还是不要直接存储到数据库里,自己单独用
一个文件夹放置他们,然后呢你就把这些文件的地址保存到数据库里,这样来说就会很合理化了,不会影响到数据库和程序的性能。
我这里只是做一个介绍,大的项目就要有性能方面的考虑了。好了,就说这么多,谢谢!