ASP.NET digunakan untuk memelihara dan mengelola data dalam mode web, mewujudkan pembuatan basis data, pengoperasian sintaks SQL, dan impor dan ekspor data. Biarkan editor saluran teknologi Foxin membawa Anda ke artikel berikut untuk mempelajari tentang langkah -langkah manajemen basis data online!
Kelas rlmandbcls
Private SDBPATH, RLCONN, SDBTYPE, SSERVERName, Susername, Spassword
Hitungan publik
Private sub class_initialize ()
sdbtype = ""
Akhir sub
Private Sub Class_Terminate ()
Jika isObject (rlconn) lalu
Rlconn.close
Atur rlconn = tidak ada
Akhiri jika
Akhir sub
Properti Publik Biarkan DBType (Byval Strvar)
SDBType = Strvar
Akhir properti
Properti Publik Let Servername (Byval Strvar)
sServername = strvar
Akhir properti
Properti Publik Let Username (Byval Strvar)
Susername = Strvar
Akhir properti
Properti Publik Let Password (Byval Strvar)
Spassword = Strvar
Akhir properti
'Atur jalur basis data
Properti Publik Biarkan Dbpath (Byval Strvar)
sdbpath = strvar
Pilih kasus SDBType
Kasus "SQL"
Strserver = nama server database sservername '
Struid = Susername 'Akun Login Anda
Strsapwd = spassword 'kata sandi login Anda
Strdbname = sdbpath 'nama basis data Anda
sdbpath = "driver = {sql server}; server =" & strserver & "; uid =" & struid & "; pwd =" & strsapwd & "; database =" & strdbname
Kasus "akses", "
sdbpath = "penyedia = microsoft.jet.oledb.4.0; Sumber data =" & server.mappath (sdbpath)
Akhiri Pilih
Checkdata rlconn, sdbpath
Akhir properti
'Periksa tautan database, (nama variabel, string koneksi)
Private Sub CheckData (DataConn, Connstr)
Pada kesalahan resume berikutnya
Set DataConn = Server.CreateObject ("ADODB.Connection")
DataConn.open Connstr
Jika err maka
Err.clear
Atur DataConn = Tidak Ada
Errmsg ("Kesalahan koneksi database:" & ganti (connstr, "/", "//") & ",/nplease Periksa string koneksi untuk mengonfirmasi apakah informasi database yang Anda masukkan benar.")
Respons.end
Akhiri jika
Akhir sub
'Periksa apakah tabel itu ada
Function Offtable (Tablename)
Pada kesalahan resume berikutnya
Rlconn.execute ("Pilih * dari" & Tablename)
Jika err.number <> 0 lalu
Err.clear ()
Hubungi errmsg ("prompt kesalahan:" & err.description)
Offtable = false
Kalau tidak
Offtable = true
Akhiri jika
Fungsi akhir
'Pesan kesalahan (pesan)
Private Sub Errmsg (MSG)
Response.write msg
Response.flush
Akhir sub
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'Ubah nilai bidang
UpColumn Sub Publik (Byval Tablename, Byval ColumnName, Byval ValueText, Byval WhereStr)
Pada kesalahan resume berikutnya
Jika di mana <> "" lalu
If instr (wherestr, "where") <= 0 lalu
Di mana = "di mana" & di mana
Akhiri jika
Kalau tidak
Di mana = ""
Akhiri jika
Rlconn.execute ("UPDATE" & Tablename & "Set" & ColumnName & "=" & ValueText & "" & WhereStr)
Jika err.number <> 0 lalu
Hubungi errmsg ("prompt kesalahan:" & err.description)
Err.clear ()
Akhiri jika
Akhir sub
'Jalankan pernyataan SQL
Sub -Eksekusi Publik (Strsql)
Setel rscount = server.CreateObject ("adodb.recordset")
Pada kesalahan resume berikutnya
Rscount = rlconn.execute (strsql)
Jika kiri (strsql, 12) = "Pilih Hitung" lalu Hitung = RScount (0)
Jika err.number <> 0 lalu
Hubungi errmsg ("prompt kesalahan:" & err.description)
Err.clear ()
Akhiri jika
Rscount.close
Atur rscount = tidak ada
Akhir sub
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'Tambahkan Indeks Bidang
Fungsi Publik AddIndex (ByVal Tablename, ByVal IndexName, ByVal ValueText)
Pada kesalahan resume berikutnya
Rlconn.execute ("create index" & indexname & "on [" & tableName & "] ([" & ValueText & "]"))
Jika err.number <> 0 lalu
Hubungi errmsg ("create in" & tableName & "tableName &" tableName & "indexname &" indexname & "cause" & err.Description & "Harap ubah indeks secara manual.")
Err.clear ()
AddIndex = false
Kalau tidak
AddIndex = true
Akhiri jika
Fungsi akhir
'Hapus indeks tabel
Fungsi Publik Delindex (ByVal Tablename, ByVal IndexName)
Pada kesalahan resume berikutnya
Rlconn.execute ("indeks ruang drop [" & tableName & "]." & IndexName)
Jika err.number <> 0 lalu
Hubungi errmsg ("in" & tableName & "TableDeLete" & IndexName & "Indeks Kesalahan, Penyebab" & Err.Description & "Harap hapus indeks secara manual.")
Err.clear ()
Delindex = false
Kalau tidak
Delindex = true
Akhiri jika
Fungsi akhir
'Ubah definisi TableName tabel untuk mengatur nama kolom bidang sebagai kunci utama
Fungsi Publik AddPrimaryKey (ByVal Tablename, ByVal ColumnName)
Pada kesalahan resume berikutnya
Tablename = ganti (ganti (Tablename, "[", ""), "]", "")
Rlconn.execute ("Alter Table" & Tablename & "Tambahkan Batasan PK _" & Tablename & "Kunci Utama (" & ColumnName & ")")
Jika err.number <> 0 lalu
Hubungi errmsg ("Kesalahan saat menambahkan" & tableName & "Field" & ColumnName & "sebagai kunci utama, alasan" & err.Description & "Harap modifikasi properti bidang secara manual.")
Err.clear ()
AddPrimaryKey = false
Kalau tidak
AddPrimaryKey = true
Akhiri jika
Fungsi akhir
'Ubah Definisi TableName Tabel Untuk Menghapus Definisi Kunci Primer Columnname Bidang
Fungsi Publik DelprimaryKey (ByVal Tablename, Byval ColumnName)
Pada kesalahan resume berikutnya
Rlconn.execute ("Alter Table" & Tablename & "Drop Space Primary Key (" & ColumnName & ")))
Jika err.number <> 0 lalu
Hubungi errmsg ("Terjadi kesalahan saat menghapus definisi kunci utama" & tableName & "" menurut "menanyakan bidang" & kolom & ", alasan" & err.Description & "Harap modifikasi properti bidang secara manual.")
Err.clear ()
Delprimarykey = false
Kalau tidak
Delprimarykey = true
Akhiri jika
Fungsi akhir
'Periksa apakah kunci utama ada dan mengembalikan nama kunci utama tabel
Fungsi GetPrimaryKey (Tablename)
pada kesalahan resume berikutnya
Redup rsprimary
GetPrimaryKey = ""
Set RSPrimary = rlconn.openschema (28, array (kosong, kosong, Tablename))
Jika tidak rsprimary.eof maka getPrimaryKey = rsprimary ("column_name")
Atur rsprimary = tidak ada
Jika err.number <> 0 lalu
Hubungi errmsg ("Database tidak mendukung kunci utama untuk mendeteksi tabel data" & tableName & ". Alasan:" & err.Description)
Err.clear ()
Akhiri jika
Fungsi akhir
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'Tambahkan bidang baru
Fungsi Publik AddColumn (Tablename, ColumnName, ColumnType)
Pada kesalahan resume berikutnya
Rlconn.execute ("ubah tabel [" & tableName & "] Tambahkan [" & ColumnName & "]" & ColumnType & "")
Jika err maka
Errmsg ("baru" & tableName & "Kesalahan bidang di tabel, silakan buat bidang " & ColumnName & " di database, atributnya adalah " & ColumnType & " , Reason" & err.description)
Err.clear
AddColumn = false
Kalau tidak
AddColumn = true
Akhiri jika
Fungsi akhir
'Ubah fungsi generik bidang
Fungsi Publik ModColumn (Tablename, ColumnName, ColumnType)
Pada kesalahan resume berikutnya
Rlconn.execute ("ubah tabel [" & tableName & "] ubah kolom [" & columnname & "]" & columnType & "")
Jika err maka
Hubungi errmsg ("ubah" & tableName & "atribut bidang dalam tabel salah, harap secara manual ubah database " & kolom & " bidang ke " & columnType & " properti, penyebab" & err.description)
Err.clear
Modcolumn = false
Kalau tidak
Modcolumn = true
Akhiri jika
Fungsi akhir
'Hapus Fungsi Generik Bidang
Fungsi Publik Delcolumn (Tablename, ColumnName)
Pada kesalahan resume berikutnya
Jika sdbtype = "sql" lalu
Rlconn.execute ("ubah tabel [" & tableName & "] kolom ruang drop [" & columnName & "]")
Kalau tidak
Rlconn.execute ("ubah tabel [" & tableName & "] drop space [" & columnname & "]")
Akhiri jika
Jika err maka
Hubungi errmsg ("hapus" & tableName & "kesalahan bidang dalam tabel, silakan hapus secara manual " & columnname & " field delete, cause" & err.description)
Err.clear
Delcolumn = false
Kalau tidak
Delcolumn = true
Akhiri jika
Fungsi akhir
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'Buka objek nama tabel
Sub RenametableConn Private ()
Pada kesalahan resume berikutnya
Setel objadoxDatabase = server.CreateObject ("adox.catalog")
ObjadoxDatabase.ActiveConnection = Connstr
Jika err maka
Errmsg ("Terjadi kesalahan saat membuat objek nama tabel perubahan. Ruang yang Anda upgrade tidak mendukung objek ini. Anda kemungkinan besar perlu mengubah nama tabel secara manual, alasan" & err.description)
Respons.end
Err.clear
Akhiri jika
Akhir sub
'Tutup objek nama tabel
Sub Private CloserEnametableConn ()
Atur objadoxDatabase = tidak ada
Conn.Close
Atur conn = tidak ada
Akhir sub
'Ubah Nama Tabel Database, Parameter Entri: Nama Tabel Lama, Nama Tabel Baru
Fungsi Publik Renametable (OldName, Newname)
Pada kesalahan resume berikutnya
Hubungi RenametableConn
objadoxdatabase.tables (OldName) .name = newname
Jika err maka
Hubungi errmsg ("Ubah kesalahan nama tabel, harap ubah secara manual nama tabel di database " & oldname & " nama tabel menjadi <b>" & newname & ", reason" & err.description)
Err.clear
Renametable = false
Kalau tidak
Renametable = true
Akhiri jika
Hubungi CloserEnametableConn
Fungsi akhir
'Hapus Fungsi Umum Tabel
Fungsi Publik Deltable (Tablename)
Pada kesalahan resume berikutnya
Rlconn.execute ("Drop Space Table [" & Tablename & "]")
Jika err maka
Errmsg ("hapus" & tableName & "kesalahan tabel, silakan hapus tabel" & tableName & " secara manual dalam database, alasan" & err.description)
Err.clear
Deltable = false
Kalau tidak
Deltable = true
Akhiri jika
Fungsi akhir
'Buat tabel baru
Fungsi Publik CreateTable (ByVal Tablename, Byval FieldList)
Redup strsql
Jika sdbtype = "sql" lalu
Strsql = "buat tabel [" & tableName & "] (" & fieldlist & ")"
Kalau tidak
Strsql = "buat tabel [" & tableName & "]"
Akhiri jika
Rlconn.execute (strsql)
Jika err.number <> 0 lalu
Hubungi errmsg ("baru" & tableName & "tabel kesalahan, penyebab" & err.description & "")
Err.clear ()
CreateTable = false
Kalau tidak
CreateTable = true
Akhiri jika
Fungsi akhir
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'Buat file database
Fungsi Publik CreateBFile (ByVal DBFileName, ByVal Savepath)
Pada kesalahan resume berikutnya
SavePath = ganti (savePath, "/", "/")
Jika benar (savePath, 1) <> "/" atau kanan (savePath, 1) <> "/" lalu savePath = trim (savePath) & "/"
Jika kiri (dbfilename, 1) = "/" atau kiri (dbfileName, 1) = "/" lalu dbfileName = trim (mid (dbfilename, 2, len (dbfileName))))
Jika dbexists (apppath () & savePath & dbfileName)
Errmsg ("Maaf, database ini sudah ada!" & AppPath () & SavePath & DBFileName)
CreatedBfile = false
Kalau tidak
Response.write apppath () & savePath & dbfileName
Redup ca
Setel ca = server.createObject ("adox.catalog")
Jika err.number <> 0 lalu
Errmsg ("tidak dapat dibuat, silakan periksa pesan kesalahannya
"& Err.number &"
"& Err.Description)
Err.clear
CreatedBfile = false
Fungsi keluar
Akhiri jika
hubungi ca.create ("penyedia = microsoft.jet.oledb.4.0; Sumber data =" & apppath () & savePath & dbfileName)
Setel ca = tidak ada
CreatedBfile = true
Akhiri jika
Fungsi akhir
'Temukan apakah ada file database
Fungsi pribadi dbexists (byval dbpath)
Pada kesalahan resume berikutnya
Redup
Set C = Server.CreateObject ("ADODB.Connection")
c.open "penyedia = microsoft.jet.oledb.4.0; sumber data =" & dbpath
Jika err.number <> 0 lalu
Err.clear
Dbexists = false
kalau tidak
Dbexists = true
Akhiri jika
Set C = Tidak Ada
Fungsi akhir
'Ambil jalan nyata saat ini
Fungsi Pribadi AppPath ()
Apppath = server.mappath ("./")
Jika benar (apppath, 1) = "/" lalu
AppPath = AppPath
Kalau tidak
Apppath = apppath & "/"
Akhiri jika
Fungsi akhir
'Hapus file database
Fungsi Publik DeletedBFile (FileSpec)
filespec = apppath () & filespec
Redup fso
Atur fso = createObject ("Scripting.filesystemObject")
Jika err.number <> 0 lalu
Errmsg ("Terjadi kesalahan saat menghapus file! Silakan periksa pesan kesalahan:" & err.number & "" & err.description & "
")
Err.clear
Deletedbfile = false
Akhiri jika
Jika dbexists (filespec) maka
hubungi fso.deleteFile (filespec)
DeletedBFile = true
Kalau tidak
Errmsg ("Terjadi kesalahan saat menghapus file! Silakan lihat pesan kesalahan:" & err.number & "" & err.description & "
")
Deletedbfile = false
Fungsi keluar
Akhiri jika
Atur fso = tidak ada
Fungsi akhir
'Ubah nama database
Fungsi Publik RenamedBFile (filespec1, filespec2)
filespec1 = apppath () & filespec1: filespec2 = apppath () & filespec2
Redup fso
Atur fso = createObject ("Scripting.filesystemObject")
Jika err.number <> 0 lalu
Errmsg ("Terjadi kesalahan saat memodifikasi nama file! Silakan periksa pesan kesalahan:" & err.number & "" & err.description)
Err.clear
RenamedBfile = false
Akhiri jika
Jika dbexists (filespec1) maka
hubungi fso.copyfile (filespec1, filespec2, true)
hubungi fso.deleteFile (filespec1)
RenamedBFile = true
Kalau tidak
Errmsg ("File sumber tidak ada !!!")
RenamedBfile = false
Fungsi keluar
Akhiri jika
Atur fso = tidak ada
Fungsi akhir
'Database terkompresi
Fungsi publik compactdbfile (strdbfilename)
DIM JET_CONN_PARTIAL
Redup sourceconn
Redup destconn
Redup ojetengine
Redup
Jet_conn_partial = "penyedia = microsoft.jet.oledb.4.0; sumber data ="
Sourceconn = jet_conn_partial & apppath () & strdbfilename
Destconn = jet_conn_partial & apppath () & "temp" & strdbfilename
SET OFSO = Server.CreateObject ("Scripting.FilesystemObject")
Set ojetengine = server.createObject ("jro.jetengine")
Dengan ofso
Jika tidak .fileexists (apppath () & strdbfilename)
Errmsg ("File database tidak ditemukan !!!")
Berhenti
Compactdbfile = false
Fungsi keluar
Kalau tidak
If .fileexists (apppath () & "temp" & strdbfilename)
Errmsg ("Kesalahan Tidak Diketahui !!!")
.DeleteFile (apppath () & "temp" & strdbfilename)
Compactdbfile = false
Fungsi keluar
Akhiri jika
Akhiri jika
Berakhir dengan
Dengan ojetengine
.CompactDatabase Sourceconn, Destconn
Berakhir dengan
Ofso.DeleteFile AppPath () & strdbfilename
Ofso.Movefile AppPath () & "Temp" & Strdbfilename, AppPath () & StrdbFileName
Set ofso = tidak ada
Atur ojetengine = tidak ada
Compactdbfile = true
Fungsi akhir
Kelas akhir
Redup mandb
Set mandb = rlmandbcls baru
'// -----------------------------------------------------------------------------------------------------------------------
'Mandb.dbtype = "sql"
'Mandb.servername = "Tao-Kuizu"
'Mandb.username = "SA"
'Mandb.password = "123456"
'Mandb.dbpath = "hhstuss"
'Mandb.createTable "cexo255", "id int not null kunci primer, nama varchar (20) not null"' buat tabel (nama tabel)
'Mandb.renametable "cexo255", "cexo2552"' nama tabel (nama tabel lama, nama tabel baru) (menggunakan komponen)
'Mandb.deltable "cexo255"' delete tabel (nama tabel)
'Mandb.addcolumn "cexo255", "sex", "varchar (2) null"' Buat struktur tabel (nama tabel, nama bidang, tipe data)
'Mandb.modcolumn "cexo255", "name", "int not null"' ubah struktur tabel (nama tabel, nama bidang, tipe data baru) _
'Mandb.delcolumn "cexo255", "sex"' hapus struktur tabel (nama tabel, nama lapangan)
'Mandb.addindex "cexo255", "i_id", "id"' Buat indeks tabel (nama tabel, nama indeks, nama bidang indeks)
'Mandb.delindex "cexo255", "i_id"' hapus indeks tabel (nama tabel, nama indeks)
'Mandb.addprimarykey "cexo255", "name"' Buat tabel kunci utama (nama tabel, nama bidang kunci utama)
'Mandb.delprimarykey "cexo255", "name"' hapus tabel kunci utama (nama tabel, nama bidang kunci utama) _
'Response.write mandb.getPrimaryKey ("cexo255")' Dapatkan kunci utama tabel (nama tabel)
'Mandb.upcolumn "cexo255", "id", 12345, "name = 1"' Ubah nilai bidang
'Mandb.Execute "Masukkan ruang ke CEXO255 (ID, NAME) VALUES (2,2)"' Tambahkan Rekaman
'Mandb.execute "Perbarui cexo255 Set ID = 3 Where Name = 2"' Modify Record
'Mandb.Execute "Hapus Ruang dari Cexo255 Where Name = 2"' Delete Record
'Mandb.execute ("pilih Count (*) dari cexo255"): response.write mandb.count' statistik jumlah catatan
'Jika mandb.checktable ("Studinfo") maka response.write "Studinfo Table ada !!!" Lain response.write "Tabel Studinfo tidak ada !!!"
'// -----------------------------------------------------------------------------------------------------------------------
'// -----------------------------------------------------------------------------------------------------------------------
Mandb.dbtype = "akses"
Mandb.dbpath = "test.mdb"
'Mandb.createdbfile "test2.mdb", ""' Buat database (nama basis data, jalur simpan)
'Mandb.deletedbfile ("test2.mdb")' hapus database (nama basis data)
'Mandb.renamedbfile "test2.mdb", "test3.mdb"' nama domain (nama basis data lama, nama database baru)
'Mandb.compactdbfile ("test3.mdb")' database terkompresi (nama basis data)
'Mandb.createTable "dw", ""' create tabel (nama tabel)
'Mandb.renametable "dw", "dw2"' nama tabel (nama tabel lama, nama tabel baru) (menggunakan komponen) _
'Mandb.Deltable "DW"' Delete Table (nama tabel)
'Mandb.addcolumn "cexo255", "name", "varchar (255) not null"' buat struktur tabel (nama tabel, nama bidang, tipe data)
'Mandb.modcolumn "cexo255", "name", "int not null"' ubah struktur tabel (nama tabel, nama bidang, tipe data baru)
'Mandb.delcolumn "cexo255", "name"' Hapus struktur tabel (nama tabel, nama lapangan)
'Mandb.addindex "cexo255", "userid", "id"' buat indeks tabel (nama tabel, nama indeks, nama bidang indeks)
'Mandb.delindex "cexo255", "userid"' hapus indeks tabel (nama tabel, nama indeks) _
'Mandb.AddPrimaryKey "CEXO255", "ID"' Buat tabel kunci utama (nama tabel, nama bidang kunci utama)
'Mandb.delprimarykey "cexo255", "id"' hapus tabel kunci primer (nama tabel, nama bidang kunci utama) _
'Response.write mandb.getPrimaryKey ("cexo255")' Dapatkan kunci utama tabel (nama tabel)
'Mandb.upcolumn "cexo255", "id", "12345", "id =' 12 '"' 'Ubah nilai bidang
'Mandb.execute "Masukkan ruang ke dalam nilai cexo255 (id) (' 789 ')"' Tambahkan catatan
'Mandb.execute "Perbarui cexo255 set id =' wxf 'di mana id =' 789 '"' Modify Record
'Mandb.Execute "Hapus ruang dari cexo255 di mana id =' wxf '"' hapus catatan hapus
Mandb.execute ("pilih Count (*) dari cexo255"): response.write mandb.count 'Statistik Jumlah catatan
'Jika mandb.checktable ("Studinfo") maka response.write "Studinfo Table ada !!!" Lain response.write "Tabel Studinfo tidak ada !!!"
'// -----------------------------------------------------------------------------------------------------------------------
Atur mandb = tidak ada
%>
Di atas adalah pengantar langkah -langkah untuk manajemen basis data online. Saya percaya setiap orang memiliki pemahaman tertentu. Jika Anda ingin mengetahui lebih banyak informasi teknis, silakan terus perhatikan saluran teknologi baru yang salah!