新聞中心
隨著互聯(lián)網(wǎng)的發(fā)展,數(shù)據(jù)的處理和存儲(chǔ)越來(lái)越重要。數(shù)據(jù)庫(kù)作為數(shù)據(jù)管理的重要工具,扮演了不可或缺的角色。對(duì)于一些開(kāi)發(fā)者來(lái)說(shuō),學(xué)習(xí)數(shù)據(jù)庫(kù)編程是非常必要的。在學(xué)習(xí)數(shù)據(jù)庫(kù)編程的過(guò)程中,編寫(xiě)創(chuàng)建數(shù)據(jù)庫(kù)的代碼可以說(shuō)是其中的一個(gè)基礎(chǔ)。本文將詳細(xì)介紹學(xué)習(xí)數(shù)據(jù)庫(kù)編程的重要性和創(chuàng)建數(shù)據(jù)庫(kù)的代碼編寫(xiě)步驟。

創(chuàng)新互聯(lián)公司于2013年創(chuàng)立,先為蘭山等服務(wù)建站,蘭山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為蘭山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
一、學(xué)習(xí)數(shù)據(jù)庫(kù)編程的重要性
1、強(qiáng)化個(gè)人技能
在工作中,擁有一些數(shù)據(jù)庫(kù)編程的技能能夠?yàn)樽约旱穆毼粠?lái)很多的優(yōu)勢(shì)。例如,數(shù)據(jù)庫(kù)能夠?yàn)槠髽I(yè)提供快速數(shù)據(jù)存儲(chǔ)和訪問(wèn),學(xué)習(xí)數(shù)據(jù)庫(kù)編程可以幫助團(tuán)隊(duì)更快速地進(jìn)行數(shù)據(jù)分析和決策。
2、提高工作效率
通過(guò)學(xué)習(xí)數(shù)據(jù)庫(kù)編程,不僅可以提高自己的編程能力,還能夠加速開(kāi)發(fā)過(guò)程中對(duì)數(shù)據(jù)庫(kù)的操作。例如通過(guò)SQL語(yǔ)句實(shí)現(xiàn)對(duì)數(shù)據(jù)的快速檢索、排序、聚合等操作,從而提高工作效率和團(tuán)隊(duì)的效率。
3、擴(kuò)展個(gè)人技能
學(xué)習(xí)數(shù)據(jù)庫(kù)編程并不是為了成為一名數(shù)據(jù)庫(kù)管理員,而是為了擴(kuò)展自己的技能和知識(shí)面。不論是在編寫(xiě)代碼時(shí)還是在團(tuán)隊(duì)協(xié)作中,使用數(shù)據(jù)庫(kù)的能力都是非常必要的。
二、創(chuàng)建數(shù)據(jù)庫(kù)的代碼編寫(xiě)步驟
創(chuàng)建數(shù)據(jù)庫(kù)是在數(shù)據(jù)庫(kù)編程中非?;A(chǔ)的一步,也是學(xué)習(xí)數(shù)據(jù)庫(kù)編程的重要階段。下面將介紹些基本的步驟以幫助你完成數(shù)據(jù)庫(kù)的創(chuàng)建。
1、導(dǎo)入需要的庫(kù)
Python 是一種流行的編程語(yǔ)言,Python 用于需要這個(gè)的操作是使用 MySQL 的時(shí)候,需要先導(dǎo)入相應(yīng)的庫(kù)。以下是需要導(dǎo)入庫(kù)的代碼示例:
“`
import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode
“`
2、創(chuàng)建數(shù)據(jù)庫(kù)連接
編寫(xiě)代碼時(shí),需要首先建立 MySQL 數(shù)據(jù)庫(kù)的連接。數(shù)據(jù)庫(kù)的連接是通過(guò)設(shè)置一個(gè)名為 connect()的函數(shù)來(lái)實(shí)現(xiàn)的。
“`
#通過(guò)以下版本的代碼建立 MySQL 數(shù)據(jù)庫(kù)的連接
try:
connection = mysql.connector.connect(host=’localhost’,
database=’database_name’,
user=’database_user’,
password=’database_password’)
if connection.is_connected():
db_Info = connection.get_server_info()
print(“Connected to MySQL Server version “, db_Info)
cursor = connection.cursor()
cursor.execute(“select database();”)
record = cursor.fetchone()
print(“Your connected to database: “, record)
except Error as e :
print (“Error while connecting to MySQL”, e)
finally:
# Closing database connection.
if(connection.is_connected()):
cursor.close()
connection.close()
print(“MySQL connection is closed”)
“`
3、數(shù)據(jù)庫(kù)創(chuàng)建
一旦數(shù)據(jù)庫(kù)建立連接,就可以通過(guò)使用 execute() 函數(shù)計(jì)算 SQL 命令來(lái)創(chuàng)建數(shù)據(jù)庫(kù)。
“`
#創(chuàng)建名為 customer 的數(shù)據(jù)庫(kù)
cursor.execute(“CREATE DATABASE customer”)
“`
4、創(chuàng)建數(shù)據(jù)表
在創(chuàng)建數(shù)據(jù)庫(kù)之后,需要在新的數(shù)據(jù)庫(kù)中建立一個(gè)新的數(shù)據(jù)表,可以通過(guò)使用 execute()函數(shù)計(jì)算 SQL 命令創(chuàng)建一個(gè)新的數(shù)據(jù)表。
“`
#在新的數(shù)據(jù)庫(kù)中,創(chuàng)建一個(gè)新的數(shù)據(jù)表(可以在下面的代碼中添加更多的列)
cursor.execute(“CREATE TABLE customer (name VARCHAR(255), address VARCHAR(255))”)
“`
完成以上操作,你就可以創(chuàng)建一個(gè) MySQL 數(shù)據(jù)庫(kù)了。
在進(jìn)行數(shù)據(jù)庫(kù)編程學(xué)習(xí)時(shí),掌握如何編寫(xiě)創(chuàng)建數(shù)據(jù)庫(kù)的代碼是非常必要的。本文介紹了通過(guò) Python 語(yǔ)言編寫(xiě)代碼創(chuàng)建 MySQL 數(shù)據(jù)庫(kù)的基本步驟,希望可以幫助讀者更好地學(xué)習(xí)數(shù)據(jù)庫(kù)編程。除此之外,學(xué)習(xí)數(shù)據(jù)庫(kù)編程的過(guò)程不僅有利于你的個(gè)人職業(yè)發(fā)展,而且可以拓寬你的技能和知識(shí)面,更好地為團(tuán)隊(duì)的數(shù)據(jù)分析和決策提供技術(shù)支持。
相關(guān)問(wèn)題拓展閱讀:
- 怎么創(chuàng)建數(shù)據(jù)庫(kù)
- 如何使用SQL代碼創(chuàng)建數(shù)據(jù)庫(kù)
- 如何用VB建立數(shù)據(jù)庫(kù)
怎么創(chuàng)建數(shù)據(jù)庫(kù)
問(wèn)題一:創(chuàng)建數(shù)據(jù)庫(kù)的兩種方法 交互式創(chuàng)建,就是你右擊數(shù)據(jù)庫(kù)然后選擇新建數(shù)據(jù)庫(kù)按鈕就可以…..還有一種就是sql語(yǔ)句創(chuàng)建比如創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)名為a 的數(shù)據(jù)庫(kù),那么sql語(yǔ)句就是,create database a;然后執(zhí)行下就可以…
問(wèn)題二:如何用MySQL建立數(shù)據(jù)庫(kù) 這很簡(jiǎn)單??!
在Windows下,假如你的MySQL裝在 D:\MySQL
就可以這樣:
先切換到它的bin目錄
cd D:\MySQL\bin\
撫:\MySQL\bin>mysql -u root -p
接著輸入你的root密碼
接下來(lái)你就可以創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建用戶、創(chuàng)建修改表之類的操作(常用命令如下)。
查看現(xiàn)有數(shù)據(jù)庫(kù)
mysql> show databases;
創(chuàng)建數(shù)據(jù)庫(kù)(假如數(shù)據(jù)庫(kù)名為 mydb)
mysql> create database mydb;
刪除數(shù)據(jù)庫(kù)(假如數(shù)據(jù)庫(kù)名為 mydb)
mysql> drop database accounts;
使用數(shù)據(jù)庫(kù)(假如使用數(shù)據(jù)庫(kù) mydb)
mysql> use mydb;
執(zhí)行完使用數(shù)據(jù)庫(kù)命令后,就可以對(duì)該數(shù)據(jù)庫(kù)進(jìn)行創(chuàng)建、修改、插入、刪除表等操作,這些表的操作命令你可以到網(wǎng)上局旦找找,不是很難的。一個(gè)數(shù)據(jù)庫(kù)就相當(dāng)于一個(gè) Excel 文件,而表則相當(dāng)于Excel文件的單元格,數(shù)據(jù)就是存放在表中。
問(wèn)題三:怎樣建立一個(gè)簡(jiǎn)單數(shù)據(jù)庫(kù)? 把excel導(dǎo)入數(shù)據(jù)庫(kù),不出現(xiàn)表格嵌套可以使用下面這個(gè)方法導(dǎo)入;
思路:
(1)、把excel數(shù)據(jù)讀入到dataset中;
(2)、建立相應(yīng)結(jié)構(gòu)的數(shù)據(jù)表格
(3)、把dat暢set中的數(shù)據(jù)更新到數(shù)據(jù)表中
問(wèn)題四:如何用數(shù)據(jù)庫(kù)向?qū)?chuàng)建數(shù)據(jù)庫(kù) Microsoft Access 提供了三種方法來(lái)創(chuàng)建 Access 數(shù)據(jù)庫(kù) (Microsoft Access 數(shù)據(jù)庫(kù):數(shù)據(jù)和對(duì)象(如表、查詢或窗體)組成的,與特定的主題或用途有關(guān)。)。
可以使用“數(shù)據(jù)庫(kù)向?qū)А眮?lái)創(chuàng)建數(shù)據(jù)庫(kù)。通過(guò)該向?qū)Э梢詮膬?nèi)置模板中進(jìn)行選擇,然后對(duì)其進(jìn)行一定程度的自定義。隨后,該向?qū)?huì)為數(shù)據(jù)庫(kù)創(chuàng)建一組表、查詢、窗體和報(bào)表,同時(shí)還會(huì)創(chuàng)建切換面板。表中不含任何數(shù)據(jù)。如果內(nèi)置模板中的某個(gè)模板非常符合您的要求,請(qǐng)使用該方法。
使用“數(shù)據(jù)庫(kù)向?qū)А眲?chuàng)建數(shù)據(jù)庫(kù)
利用簡(jiǎn)鎮(zhèn)“數(shù)據(jù)庫(kù)向?qū)А保靡徊讲僮骷纯蔀樗x數(shù)據(jù)庫(kù)類型創(chuàng)建必需的表、窗體和報(bào)表。這是創(chuàng)建數(shù)據(jù)庫(kù)的最簡(jiǎn)單方法。該向?qū)峁┝擞邢薜倪x項(xiàng)來(lái)自定義數(shù)據(jù)庫(kù)。
單擊工具欄上的“新建”。
在“新建文件”任務(wù)窗格中,在“模板”下,單擊“本機(jī)上的模板”。
在“數(shù)據(jù)庫(kù)”選項(xiàng)卡上,單擊要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)類型的圖標(biāo),然后單擊“確定”。
在“文件新建數(shù)據(jù)庫(kù)”對(duì)話框中,指定數(shù)據(jù)庫(kù)的名稱和位置,然后單擊“創(chuàng)建”。
按照“數(shù)據(jù)庫(kù)向?qū)А钡闹笇?dǎo)進(jìn)行操作。
如果向?qū)磫?dòng)
這可能是因?yàn)?Access 正運(yùn)行于沙盒模式,但您的計(jì)算機(jī)上尚未安裝 Microsoft Jet 4.0 SP8 或更高版本。啟用沙盒模式后,必須安裝有 Jet 4.0 SP8 或更高版本,Access 才能完全發(fā)揮作用。
有關(guān)安裝 Jet 升級(jí)的詳細(xì)信息,請(qǐng)參閱 Office Online 文章關(guān)于 Microsoft Jet 4.0 SP8 或更高版本。
有關(guān)沙盒模式的詳細(xì)信息,請(qǐng)參閱 Office Online 文章關(guān)于 Microsoft Jet Expression Service 沙盒模式。
注釋 不能使用“數(shù)據(jù)庫(kù)向?qū)А毕蛞延械臄?shù)據(jù)庫(kù)中添加新的表、窗體或報(bào)表。
如果正在使用 Access 2023,可以在 中搜索 Access 模板。下載模板是創(chuàng)建數(shù)據(jù)庫(kù)的最快方式。如果您找到了非常符合要求的模板,請(qǐng)使用該方法。模板是一個(gè)包含表、查詢、窗體和報(bào)表的 Access 數(shù)據(jù)庫(kù)文件 (*.mdb)。表中不含任何數(shù)據(jù)。打開(kāi)數(shù)據(jù)庫(kù)后,可以自定義數(shù)據(jù)庫(kù)和對(duì)象。
使用模板創(chuàng)建數(shù)據(jù)庫(kù)
這是創(chuàng)建數(shù)據(jù)庫(kù)的最快方式。如果能找到并使用與您的要求非常接近的模板,則此方法效果更佳。
在工具欄上單擊“新建”。
在“新建文件”任務(wù)窗格中,在“模板”下,搜索特定的模板,或單擊“Office Online 模攔臘粗板”找到合適的模板。
找到需要的 Access 模板,然后單擊“下載”。
如果要基于自己的設(shè)計(jì)創(chuàng)建數(shù)據(jù)庫(kù),請(qǐng)先創(chuàng)建一個(gè)空數(shù)據(jù)庫(kù),然后再分別添加表、窗體、報(bào)表及其他對(duì)象。這是最靈活的方法,但需要分別定義每一個(gè)數(shù)據(jù)庫(kù)元素。
不使用“數(shù)據(jù)庫(kù)向?qū)А眲?chuàng)建空數(shù)據(jù)庫(kù)
單擊工具欄上的“新建”。
在“新建文件”任務(wù)窗格中的“新建”下,單擊“空數(shù)據(jù)庫(kù)”。
在“文件新建數(shù)據(jù)庫(kù)”對(duì)話框中,指定數(shù)據(jù)庫(kù)的名稱和位置,然后單擊“創(chuàng)建”。
然后將出現(xiàn)“數(shù)據(jù)庫(kù)”窗口 (數(shù)據(jù)庫(kù)窗口:在打開(kāi) Access 數(shù)據(jù)庫(kù)或 Access 項(xiàng)目時(shí)出現(xiàn)的窗口。它顯示用于新建數(shù)據(jù)庫(kù)對(duì)象和打開(kāi)現(xiàn)有對(duì)象的快捷方式。),現(xiàn)在便可以在數(shù)據(jù)庫(kù)中創(chuàng)建所需的對(duì)象 (數(shù)據(jù)庫(kù)對(duì)象:Access 數(shù)據(jù)庫(kù)包含諸如表、查詢、窗體、報(bào)表、頁(yè)、宏和模塊等對(duì)象;Access 項(xiàng)目包含諸如窗體、報(bào)表、頁(yè)、宏和模塊等對(duì)象。)?!?>
問(wèn)題五:怎樣在mysql中創(chuàng)建數(shù)據(jù)庫(kù) 是這句:創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)MYSQLDATA
mysql> CREATE DATABASE MYSQLDATA;
基本操作:MySQL中新建用戶,新建數(shù)據(jù)庫(kù),用戶授權(quán),刪除用戶,修改密碼的相關(guān)操作測(cè)試環(huán)境:WIN32 mysql5.0.45注:本操作是在WIN命令提示符下,phpMyAdmin同樣適用。
用戶:phplamp 用戶數(shù)據(jù)庫(kù):phplampDB1.新建用戶。登錄MYSQL
@>mysql -u root -p
@>密碼
創(chuàng)建用戶
mysql> insert into mysql.user(Host,User,Password) values(localhost,phplamp,password(1234));
刷新系統(tǒng)權(quán)限表
mysql>flush privileges;
這樣就創(chuàng)建了一個(gè)名為:phplamp 密碼為:1234 的用戶。然后登錄一下。mysql>exit;
@>mysql -u phplamp -p
@>輸入密碼
mysql>登錄成功2.為用戶授權(quán)。登錄MYSQL(有ROOT權(quán)限)。我里我以ROOT身份登錄.
@>mysql -u root -p
@>密碼
首先為用戶創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)(phplampDB)
mysql>create database phplampDB;
授權(quán)phplamp用戶擁有phplamp數(shù)據(jù)庫(kù)的所有權(quán)限。
>grant all privileges on phplampDB.* to identified by ‘1234’;
刷新系統(tǒng)權(quán)限表
mysql>flush privileges;
mysql>其它操作/*
如果想指定部分權(quán)限給一用戶,可以這樣來(lái)寫(xiě):
mysql>grant select,update on phplampDB.* to identified by ‘1234’;
刷新系統(tǒng)權(quán)限表。
mysql>flush privileges;
*/3.刪除用戶。@>mysql -u root -p
@>密碼
mysql>DELETE FROM user WHERE User=phplamp and Host=localhost;
mysql>flush privileges;
刪除用戶的數(shù)據(jù)庫(kù)
mysql>drop database phplampDB;4.修改指定用戶密碼。@>mysql -u root -p
@>密碼
mysql>update mysql.user set password=password(‘新密碼’) where User=phplamp and Host=localhost;
mysql>flush privileges;5.列出所有數(shù)據(jù)庫(kù)mysql>show database;6.切換數(shù)據(jù)庫(kù)mysql>use ‘?dāng)?shù)據(jù)庫(kù)名’;7.列出所有表mysql>show t……>>
問(wèn)題六:怎么創(chuàng)建數(shù)據(jù)庫(kù)連接 方法一、通過(guò)編寫(xiě)代碼來(lái)連接數(shù)據(jù)庫(kù)
1定義連接字符串。Data Source=服務(wù)器;Initial Catalog=數(shù)據(jù)庫(kù)名;User ID=用戶名;Pwd=密碼 如:Data Source=IDEA-PC\SQLEXPRESS;Initial Catalog=student;User ID=sa;
2創(chuàng)建Connection對(duì)象。 SqlConnection sqlconnection1=new SqlConnection(constring);
constring為連接字符串。
3打開(kāi)與數(shù)據(jù)庫(kù)的鏈接。 Sqlconnection1.Open();
4這時(shí)數(shù)據(jù)庫(kù)就連接成功,可以操作數(shù)據(jù)庫(kù)了。
方法二、通過(guò)拖拽形式建立數(shù)據(jù)庫(kù)連接
1打開(kāi)視圖–>服務(wù)器資源管理器。
2右鍵點(diǎn)就數(shù)據(jù)連接,選擇添加連接。
3選擇服務(wù)器名(先刷新一下)–>登陸到服務(wù)器身份驗(yàn)證形式–>選擇一個(gè)數(shù)據(jù)庫(kù)名–>測(cè)試鏈接–>確定(如果測(cè)試鏈接成功的話)。
4這是建立數(shù)據(jù)庫(kù)連接就成功了,可以使用了。
問(wèn)題七:sqlserver 下怎么建立數(shù)據(jù)庫(kù) 怎么建表 方法/步驟
1
首先我們打開(kāi)SQL SERVER自帶的數(shù)據(jù)庫(kù)管理工具,從開(kāi)始菜單中可以找到,如圖點(diǎn)擊進(jìn)去;
2
開(kāi)始連接SQL SERVER服務(wù)器,就是我們裝好的SQL SERVER 服務(wù)器;
3
右擊數(shù)據(jù)庫(kù),選擇之一個(gè),新建一個(gè)數(shù)據(jù)庫(kù);
4
填寫(xiě)數(shù)據(jù)庫(kù)的名稱,下面是設(shè)置自動(dòng)增長(zhǎng)的,一般不用管,默認(rèn)
5
點(diǎn)擊確定后就可以生成一個(gè)數(shù)據(jù)庫(kù),此時(shí)里面是沒(méi)有表的;
6
右擊表新建一個(gè)表,填寫(xiě)你要的字段名稱
7
填完字段名稱后點(diǎn)擊字段名稱那個(gè)內(nèi)部窗口的小叉叉,然后就提示你輸入表名了,填寫(xiě)下表名,一個(gè)數(shù)據(jù)庫(kù)的建立過(guò)程就是這樣的;
或者
create database stuDB
on primary — 默認(rèn)就屬于primary文件組,可省略
(
/*–數(shù)據(jù)文件的具體描述–*/
name=’stuDB_data’, — 主數(shù)據(jù)文件的邏輯名稱
filename=’D:\stuDB_data.mdf’, — 主數(shù)據(jù)文件的物理名稱
size=5mb, –主數(shù)據(jù)文件的初始大小
maxsize=100mb, — 主數(shù)據(jù)文件增長(zhǎng)的更大值
filegrowth=15%–主數(shù)據(jù)文件的增長(zhǎng)率
)
log on
(
/*–日志文件的具體描述,各參數(shù)含義同上–*/
name=’stuDB_log’,
filename=’D:\stuDB_log.ldf’,
size=2mb,
filegrowth=1mb
)
問(wèn)題八:oracle數(shù)據(jù)庫(kù)怎么創(chuàng)建新用戶? 在CRT中進(jìn)入oracle –連接sqlplus
按照下面寫(xiě)完代碼直接復(fù)制進(jìn)去回車就行了
—建立用戶代碼為:CREATE USER 用戶名字 PROFILE DEFAULT IDENTIFIED BY 密碼 DEFAULT TABLESPACE 指定表空間名字 TEMPORARY TABLESPACE 臨時(shí)表空間 ACCOUNT UNLOCK;
—賦權(quán)
begin
EXECUTE IMMEDIATE ‘GRA?T SELECT ANY DICTIONARY TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT ALTER ANY TABLE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT ALTER SYSTEM TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT ALTER ANY PROCEDURE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CONNECT TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE ANY PROCEDURE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE ANY TABLE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE ANY INDEX TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE DATABASE LINK TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE PUBLIC DATABASE LINK TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE ANY VIEW TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE PUBLIC SYNONYM TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT CREATE TABLE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DELETE ANY TABLE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP PUBLIC DATABASE LINK TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP ANY TRIGGER TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP ANY INDEX TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP ANY PROCEDURE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP ANY TABLE TO 用戶名’;
EXECUTE IMMEDIATE ‘GRANT DROP ANY VIEW TO 用戶名’;
……>>
問(wèn)題九:如何創(chuàng)建數(shù)據(jù)庫(kù) 1、通過(guò)向?qū)Ы⒑褪褂脭?shù)據(jù)庫(kù)
之一步:選擇服務(wù)視圖,然后展開(kāi)DataBase(數(shù)據(jù)庫(kù)節(jié)點(diǎn)),右鍵點(diǎn)擊JavaDB
啟動(dòng)服務(wù)器
2、在右鍵單擊JavaDB,選擇創(chuàng)建數(shù)據(jù)庫(kù)
3、在彈出的對(duì)話框中填寫(xiě)相應(yīng)的名稱,寫(xiě)完后點(diǎn)擊確定完成的數(shù)據(jù)的創(chuàng)建。
如何使用SQL代碼創(chuàng)建數(shù)據(jù)庫(kù)
CREATEDATABASEdatabase_name>>>>::={FILESTREAM()|DEFAULT_FULLTEXT_LANGUAGE={lcid|language_name|language_alias}|DEFAULT_LANGUAGE={lcid|language_name|language_alias}|NESTED_TRIGGERS={OFF|ON}|TRANSFORM_NOISE_WORDS={OFF|ON}|TWO_DIGIT_YEAR_CUTOFF=|DB_CHAINING{OFF|ON}|TRUSTWORTHY{OFF|ON}}::={NON_TRANSACTED_ACCESS={OFF|READ_ON|FULL}|DIRECTORY_NAME=’directory_name’}ToattachadatabaseCREATEDATABASEdatabase_nameONFOR{{ATTACH>}|ATTACH_REBUILD_LOG}::={(NAME=logical_file_name,FILENAME={‘os_file_name’|’filestream_path’}>|UNLIMITED}>>)}::={FILEGROUPfilegroup_name}::={|RESTRICTED_USER|FILESTREAM(DIRECTORY_NAME={‘directory_name’|NULL})}::={ENABLE_BROKER|NEW_BROKER|ERROR_BROKER_CONVERSATIONS}CreateadatabasesnapshotCREATEDATABASEdatabase_snapshot_nameON(NAME=logical_file_name,FILENAME=’os_file_name’)ASSNAPSHOTOFsource_database_namedatabase_name新數(shù)據(jù)庫(kù)的名稱。數(shù)據(jù)庫(kù)名稱在SQLServer的實(shí)例中必須唯一,并且必須符合標(biāo)識(shí)符規(guī)則。除非沒(méi)有為日志文件指定邏輯名稱,否則database_name最多可以包含128個(gè)字符。如果未指定邏輯日志文件名稱,則SQLServer將通過(guò)向database_name追加后綴來(lái)為日志生成logical_file_name和os_file_name。這會(huì)將database_name限制為123個(gè)字符,從而使生成的邏輯文件名稱不超過(guò)128個(gè)字符。如果未指定數(shù)據(jù)文件的名稱,則SQLServer使用database_name作為logical_file_name和os_file_name。默認(rèn)路徑從注冊(cè)表中獲得。可以使用ManagementStudio中的“服務(wù)器屬性”(“數(shù)據(jù)庫(kù)設(shè)置”頁(yè))更改默認(rèn)路徑。更改默認(rèn)路徑要求重新啟動(dòng)SQLServer。CONTAINMENT指定數(shù)據(jù)庫(kù)的包含狀態(tài)。NONE=非液譽(yù)包含數(shù)據(jù)庫(kù)。PARTIAL=部分包含的數(shù)據(jù)庫(kù)。ON指定閉埋空顯式定義用來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)數(shù)據(jù)部分的磁盤文件(數(shù)據(jù)文件)。當(dāng)后面是以逗號(hào)分隔的、用以定義主文件組的數(shù)據(jù)文件的項(xiàng)列表時(shí),需要使用ON。主文件組的文件列表可后跟以逗號(hào)分隔的、用以定義用戶文件組及其文件的項(xiàng)列表(可選)。PRIMARY指定關(guān)聯(lián)的列表定義主文件。在主文件組的項(xiàng)中指定的之一個(gè)文件將成為主文件。一個(gè)數(shù)據(jù)庫(kù)只能有一個(gè)主文件。有關(guān)詳細(xì)信息,請(qǐng)參閱數(shù)據(jù)庫(kù)文件和文件組。如果沒(méi)有指定PRIMARY,那么CREATEDATABASE語(yǔ)句中列出的之一個(gè)文件將成為主文件。LOGON指定顯式定義用來(lái)存儲(chǔ)數(shù)據(jù)轎瞎庫(kù)日志的磁盤文件(日志文件)。LOGON后跟以逗號(hào)分隔的用以定義日志文件的項(xiàng)列表。如果沒(méi)有指定LOGON,將自動(dòng)創(chuàng)建一個(gè)日志文件,其大小為該數(shù)據(jù)庫(kù)的所有數(shù)據(jù)文件大小總和的25%或512KB,取兩者之中的較大者。此文件放置于默認(rèn)的日志文件位置。有關(guān)此位置的信息,請(qǐng)參閱查看或更改數(shù)據(jù)文件和日志文件的默認(rèn)位置(SQLServerManagementStudio)。不能對(duì)數(shù)據(jù)庫(kù)快照指定LOGON。COLLATEcollation_name指定數(shù)據(jù)庫(kù)的默認(rèn)排序規(guī)則。排序規(guī)則名稱既可以是Windows排序規(guī)則名稱,也可以是SQL排序規(guī)則名稱。如果沒(méi)有指定排序規(guī)則,則將SQLServer實(shí)例的默認(rèn)排序規(guī)則分配為數(shù)據(jù)庫(kù)的排序規(guī)則。不能對(duì)數(shù)據(jù)庫(kù)快照指定排序規(guī)則名稱。不能使用FORATTACH或FORATTACH_REBUILD_LOG子句指定排序規(guī)則名稱。有關(guān)如何更改附加數(shù)據(jù)庫(kù)的排序規(guī)則的信息,請(qǐng)?jiān)L問(wèn)此Microsoft網(wǎng)站。有關(guān)Windows和SQL排序規(guī)則名稱的詳細(xì)信息,請(qǐng)參閱COLLATE(Transact-SQL)。注意包含數(shù)據(jù)庫(kù)的排序方式不同于非包含數(shù)據(jù)庫(kù)。有關(guān)詳細(xì)信息,請(qǐng)參閱包含數(shù)據(jù)庫(kù)的排序規(guī)則。WITH僅在將CONTAINMENT設(shè)置為PARTIAL之后,才允許使用以下選項(xiàng)。如果將CONTAINMENT設(shè)置為NONE,將發(fā)生錯(cuò)誤。NON_TRANSACTED_ACCESS={OFF|READ_ON|FULL}指定對(duì)數(shù)據(jù)庫(kù)的非事務(wù)性FILESTREAM訪問(wèn)的級(jí)別。USEmaster;GOCREATEDATABASEmytest;GO–VerifythedatabasefilesandsizesSELECTname,size,size*1.0/128ASFROMsys.master_filesWHEREname=N’mytest’;GOUSEmaster;GOCREATEDATABASEmytest;GO–VerifythedatabasefilesandsizesSELECTname,size,size*1.0/128ASFROMsys.master_filesWHEREname=N’mytest’;GOB.創(chuàng)建指定數(shù)據(jù)和事務(wù)日志文件的數(shù)據(jù)庫(kù)下面的示例將創(chuàng)建數(shù)據(jù)庫(kù)Sales。因?yàn)闆](méi)有使用關(guān)鍵字PRIMARY,之一個(gè)文件(Sales_dat)將成為主文件。因?yàn)樵赟ales_dat文件的SIZE參數(shù)中沒(méi)有指定MB或KB,將使用MB并按MB分配。Sales_log文件以MB為單位進(jìn)行分配,因?yàn)镾IZE參數(shù)中顯式聲明了MB后綴。USEmaster;GOCREATEDATABASESalesON(NAME=Sales_dat,FILENAME=’C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf’,SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Sales_log,FILENAME=’C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf’,SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB);GOUSEmaster;GOCREATEDATABASESalesON(NAME=Sales_dat,FILENAME=’C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf’,SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Sales_log,FILENAME=’C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf’,SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB);GOC.通過(guò)指定多個(gè)數(shù)據(jù)和事務(wù)日志文件創(chuàng)建數(shù)據(jù)庫(kù)以下示例創(chuàng)建數(shù)據(jù)庫(kù)Archive,該數(shù)據(jù)庫(kù)具有三個(gè)100-MB數(shù)據(jù)文件和兩個(gè)100-MB事務(wù)日志文件。主文件是列表中的之一個(gè)文件,并使用PRIMARY關(guān)鍵字顯式指定。事務(wù)日志文件在LOGON關(guān)鍵字后指定。請(qǐng)注意用于FILENAME選項(xiàng)中各文件的擴(kuò)展名:.mdf用于主數(shù)據(jù)文件,.ndf用于輔助數(shù)據(jù)文件,.ldf用于事務(wù)日志文件。此示例將數(shù)據(jù)庫(kù)放置于D:驅(qū)動(dòng)器上,而非master數(shù)據(jù)庫(kù)中。USEmaster;GOCREATEDATABASEArchiveONPRIMARY(NAME=Arch1,FILENAME=’D:\SalesData\archdat1.mdf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch2,FILENAME=’D:\SalesData\archdat2.ndf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch3,FILENAME=’D:\SalesData\archdat3.ndf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20)LOGON(NAME=Archlog1,FILENAME=’D:\SalesData\archlog1.ldf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Archlog2,FILENAME=’D:\SalesData\archlog2.ldf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20);GOUSEmaster;GOCREATEDATABASEArchiveONPRIMARY(NAME=Arch1,FILENAME=’D:\SalesData\archdat1.mdf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch2,FILENAME=’D:\SalesData\archdat2.ndf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch3,FILENAME=’D:\SalesData\archdat3.ndf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20)LOGON(NAME=Archlog1,FILENAME=’D:\SalesData\archlog1.ldf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Archlog2,FILENAME=’D:\SalesData\archlog2.ldf’,SIZE=100MB,MAXSIZE=200,FILEGROWTH=20);GO
如何用VB建立數(shù)據(jù)庫(kù)
VB6集成調(diào)試環(huán)境左邊工具箱內(nèi)已加載了有關(guān)數(shù)據(jù)庫(kù)編程必須的控談櫻指件。
然后在FORM1窗體中添加ADODC控件和DATAGRID控件,將DATAGRID1的屬性DATASOURCE選ADODC1。
打開(kāi)ADODC1控件屬性頁(yè)使用連接字符串,選生成。在提供者選項(xiàng)含配中選MICROSOFT jet 4.0 OLE DB Provider,然后按要求連接數(shù)據(jù)庫(kù)等。在ADODC1控件屬性頁(yè)使用連接字符串空白文本窗口中就有一長(zhǎng)串字符串,注意該字符串可復(fù)制到程序代碼用于編程。ADODC1控件屬性頁(yè)的數(shù)據(jù)源內(nèi)有命頌族令文本(SQL)編寫(xiě)窗口可編寫(xiě)SQL查詢語(yǔ)言。該窗口的SQL語(yǔ)句可復(fù)制到程序代碼用于編程。
1、首先點(diǎn)擊打開(kāi)主菜單欄中的“外接程序”選項(xiàng)。
2、然后在彈出來(lái)的窗口中點(diǎn)擊打開(kāi)“可視化數(shù)據(jù)管理器”,出現(xiàn)下圖中的界面。
3、然后單擊文件中的新建,選擇“microsot access”,“version 7.0”,彈出保存界面,點(diǎn)擊保存后出現(xiàn)如下界面。
4、然后右鍵單擊properties,選擇“新建表”,輸入姿寬表名稱,添加字段。
5、然后打開(kāi)類型,選擇字段類型的大小,回車確定。
6、然后點(diǎn)擊“生成表”選項(xiàng)。
7、然后雙此冊(cè)歷擊“1”或者右鍵單擊選擇打開(kāi)。
8、然后輸入值后工具欄會(huì)變化。
9、然后點(diǎn)擊添森搜加就完成了。
Visual Basic作為應(yīng)用程序的開(kāi)發(fā)“利器”也表現(xiàn)在數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā)上,它良好的界面和強(qiáng)大的控件功能使數(shù)據(jù)庫(kù)編程變得簡(jiǎn)單多了。但即便如此,數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā)仍然算得上是VB編程中的難點(diǎn),這是因?yàn)槟悴粌H要熟悉VB中關(guān)于數(shù)據(jù)庫(kù)編程方面的知識(shí)(當(dāng)然這是十分簡(jiǎn)單的)還要了解數(shù)據(jù)庫(kù)的知識(shí)。所以我們先介紹一下數(shù)據(jù)庫(kù)的基本知識(shí),算是學(xué)習(xí)數(shù)據(jù)庫(kù)編程前的熱身運(yùn)動(dòng)吧!
一、熱身運(yùn)動(dòng)
首先需要聲明是,我們這里介紹的數(shù)據(jù)庫(kù)知識(shí)都是指的關(guān)系數(shù)據(jù)庫(kù)。所謂關(guān)系數(shù)據(jù)庫(kù)就是將數(shù)據(jù)表示為表的,通過(guò)建立簡(jiǎn)單表之間的關(guān)系來(lái)定義結(jié)構(gòu)的一種數(shù)據(jù)庫(kù)。
不管表在數(shù)據(jù)庫(kù)文件中的物理存儲(chǔ)方雹檔式如何,它都可以看作一組行和列,與電子表格的行和列類似。在關(guān)系數(shù)據(jù)庫(kù)中,行被稱為記錄,而列則被稱為字段。下面是一個(gè)客戶表的例子。
表1 客戶表
客戶號(hào) 姓名 地址源旅亂 城市 街道 郵編
1723 Doe John 1234 Ffth Avenue New York NY 1004
3391 Smith Mary 9876 Myrtle Lavee Bosten MA 6078
3765 Blasel Mortimer 2296j River Road peoria IL 7011
此表中每一行是一個(gè)記錄,它包含了特定客戶的所有信息,而每個(gè)記錄則包含了相同類型和數(shù)量的字段:客戶號(hào)、姓名等等。
表 是一種按行與列排列的相關(guān)信息的邏輯組,類似于工作單表。
字段 數(shù)據(jù)庫(kù)表中的每一列稱作一個(gè)字段。表是由其包含的各種字段定義的,每個(gè)字段描述鎮(zhèn)模了它所含有的數(shù)據(jù)。創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)時(shí),須為每個(gè)字段分配一個(gè)數(shù)據(jù)類型、更大長(zhǎng)度和其它屬性。字段可包含各種字符、數(shù)字甚至圖形。
記錄 各個(gè)客戶有關(guān)的信息存放在表的行,被稱為記錄。一般來(lái)說(shuō),數(shù)據(jù)庫(kù)表創(chuàng)建時(shí)任意兩個(gè)記錄都不能相同。
鍵 鍵就是表中的某個(gè)字段(或多個(gè)字段),它(們)為快速檢索而被索引。鍵可以是唯一的,也可以是非唯一的,取決于它(們)是否允許重復(fù)。唯一鍵可以指定為主鍵,用來(lái)唯一標(biāo)識(shí)表的每行。例如,在前面的例子中,客戶標(biāo)識(shí)號(hào) (客戶號(hào)) 是表的主鍵,因?yàn)榭蛻籼?hào)唯一地標(biāo)識(shí)了一個(gè)客戶。
關(guān)系 數(shù)據(jù)庫(kù)可以由多個(gè)表組成,表與表之間可以以不同的方式相互關(guān)聯(lián)。例如,客戶數(shù)據(jù)庫(kù)還可以有一個(gè)包含某個(gè)客戶的所有定單的表。它只用“客戶號(hào)”字段來(lái)引用該定單的客戶,而不在定單表中的每項(xiàng)重復(fù)所有客戶信息,如下表所示:
表2 定貨表
定貨 客戶號(hào) 日期 內(nèi)容 數(shù)量
/23/94 27 $22.95
/17/94 46 $9.57
/15/96 27 $22.95
在這個(gè)表中,客戶號(hào)字段引用了客戶表中的 客戶號(hào)字段,從而把定單和客戶聯(lián)系起來(lái)了??梢钥吹剑蛻?3391 (Mary Smith) 在 94 年 2 月 23 日訂購(gòu)了 27 項(xiàng),在 94 年 3 月 17 日訂購(gòu)了 46 項(xiàng)。用來(lái)建立關(guān)系的鍵叫做外部鍵,因?yàn)樗c“外部”表(客戶表)的主鍵關(guān)聯(lián)。
一對(duì)多和多對(duì)多關(guān)系 上表中的關(guān)系類型叫做一對(duì)多關(guān)系,因?yàn)橐粋€(gè)客戶可以發(fā)出多個(gè)定單,而某個(gè)特定的定單只能是一個(gè)客戶所發(fā)。也可以建立多對(duì)多的關(guān)系。例如,列出所有可以銷售的項(xiàng)(存貨)的盤存表:
表3 盤存表
內(nèi)容 描述 供應(yīng)商 費(fèi)用 盤存
27 Straw Hat Garden Supply Co. $14.00 50
46 Garden gloves Garden Supply Co. $4.50 75
102 hanging floral industries $6.
從盤存表中,可以看到在客戶和存貨項(xiàng)之間存在多對(duì)多的關(guān)系。也就是說(shuō),一個(gè)客戶可以訂購(gòu)多個(gè)存貨項(xiàng),而一個(gè)存貨項(xiàng)又能夠被多個(gè)客戶訂購(gòu)。多對(duì)多關(guān)系是通過(guò)兩個(gè)獨(dú)立的一對(duì)多關(guān)系來(lái)定義的,公共的“多”表包含了兩個(gè)其它表的外部鍵。在該例中,定貨s 表與 盤存 表(通過(guò) “內(nèi)容”)與 Customer 表(通過(guò) 客戶號(hào))都相關(guān)聯(lián)。通過(guò)這三個(gè)表,我們可以看到,Mary Smith (客戶號(hào) 3391) 訂購(gòu)了 Straw Hat (“內(nèi)容” 27) 和Garden Gloves (“內(nèi)容” 46),而 Mary Smith (客戶號(hào) 3391) 和 Mortimer Blaselflatz (客戶號(hào) 8765) 都訂購(gòu)了Straw Hat (“內(nèi)容” 27)。如果把客戶表和盤存表的相關(guān)字段與 定貨表的“定貨”字段聯(lián)結(jié)起來(lái),建立一個(gè)“關(guān)聯(lián)”表,那么這個(gè)關(guān)系就更清楚了。
表4 關(guān)聯(lián)表:按客戶號(hào)和內(nèi)容排序
定貨號(hào) 客戶號(hào) 姓名 內(nèi)容 描述
Smith Mary 27 Straw Hat
Smith Mary 46 Garden Gloves
Blaselfatz Mortimer 27 Straw Hat
規(guī)范化 數(shù)據(jù)庫(kù)設(shè)計(jì)者的任務(wù)就是組織數(shù)據(jù),而組織數(shù)據(jù)的方法,應(yīng)能消除不必要的重復(fù),并為所有必要信息提供快速查找路徑。為了達(dá)到這種目標(biāo)而把信息分離到各種獨(dú)立的表中去的過(guò)程,叫作規(guī)范化。
規(guī)范化是用許多指定的規(guī)則和不同級(jí)別的范式來(lái)進(jìn)行規(guī)范的復(fù)雜過(guò)程。該過(guò)程的研討已超出了本文的范圍。但是,大多數(shù)簡(jiǎn)單數(shù)據(jù)庫(kù)的規(guī)范化可以用下面簡(jiǎn)單的經(jīng)驗(yàn)規(guī)則來(lái)完成:包含重復(fù)信息的表必須分成獨(dú)立的幾個(gè)表來(lái)消除重復(fù)。
例如,使學(xué)生和課程對(duì)應(yīng)的學(xué)生數(shù)據(jù)庫(kù),包含了下表所示的信息。
表5
學(xué)生 課程 描述 教授
1 4 Introduction to Physiology Dawson
2 3 Applied Basketweaing Carruth
3 1 Physics for Short-定貨 cooks Adms
4 2 Introduction to Physiology Dawsons
如果有選學(xué)了十二門課程的 1000 個(gè)學(xué)生,每門課程的說(shuō)明和教師將顯示100多次— 對(duì)選了那門課程的每個(gè)學(xué)生都要重復(fù)一次。要避免這種低效率,應(yīng)當(dāng)把表分成兩個(gè)獨(dú)立的表來(lái)規(guī)范化,一個(gè)用來(lái)表示學(xué)生,另一個(gè)用來(lái)表示課程,如表6,表7所示。
學(xué)生 課程
1 4
2 3
3 1
4 4
課程 描述 教授
1 Physics for Short-定貨 cooks Adms
2 Counterculture Sociology Beckely
3 Applied Basketweaing Carruth
4 Introduction to Physiology Dawsons
表6
表7
現(xiàn)在表被規(guī)范化了,所以,要改變特定課程的課程描述或“數(shù)據(jù)”,只要改變一個(gè)記錄就可以了。
以上是關(guān)于數(shù)據(jù)庫(kù)的基本知識(shí),這是學(xué)習(xí)數(shù)據(jù)庫(kù)編程所必須的。雖然數(shù)據(jù)庫(kù)技術(shù)作為一門學(xué)科,其深度和廣度不是這點(diǎn)篇幅能描述的,但作為入門和簡(jiǎn)單數(shù)據(jù)庫(kù)編程應(yīng)該是足夠了。
好了,下面我們就可以開(kāi)始練練了。我們經(jīng)常遇到數(shù)據(jù)庫(kù)系統(tǒng)是登記系統(tǒng),不管你是在單位,或是參加什么組織,登記是免不了的,而且它的結(jié)構(gòu)比較簡(jiǎn)單,我們就以一個(gè)登記系統(tǒng)為例吧。分析一下該系統(tǒng)所涉及到的數(shù)據(jù)。
二、磨刀不誤砍柴功
對(duì)于登記,要跟蹤的信息包括:
● 姓名 ● 性別
● 籍貫 ● 年齡
● 出生年月 ● 單位
● 地址 ● 郵政編碼
● ● 傳真
當(dāng)然,可以簡(jiǎn)單地創(chuàng)建一個(gè)表,使得上述的每個(gè)數(shù)據(jù)項(xiàng)對(duì)應(yīng)一個(gè)字段。
現(xiàn)在需要給表指派主鍵,用以唯一標(biāo)識(shí)每一條記錄,在登記表中分別添加登記號(hào)作為唯一鍵,這樣就保證數(shù)據(jù)庫(kù)中的任兩條記錄都不同了。
對(duì)數(shù)據(jù)庫(kù)作出以上分析后,我們就可以開(kāi)始建立數(shù)據(jù)庫(kù)了。
三、建營(yíng)扎寨
在這里我們學(xué)習(xí)怎樣建立數(shù)據(jù)庫(kù),首先需要確定要建立數(shù)據(jù)庫(kù)的類型。在Visual Basic中通過(guò)數(shù)據(jù)訪問(wèn)控件或數(shù)據(jù)訪問(wèn)對(duì)象(DAO)可以訪問(wèn)下列數(shù)據(jù)庫(kù):
1. JET數(shù)據(jù)庫(kù),即Microsoft Access
2. ISAM數(shù)據(jù)庫(kù),如:dBase,F(xiàn)oxPro等
3. ODBC數(shù)據(jù)庫(kù),凡是遵循ODBC標(biāo)準(zhǔn)的客戶/服務(wù)器數(shù)據(jù)庫(kù)。如:Microsoft SQL Server、Oracle
一般來(lái)說(shuō),如果要開(kāi)發(fā)個(gè)人的小型數(shù)據(jù)庫(kù)系統(tǒng),用Access數(shù)據(jù)庫(kù)比較合適,要開(kāi)發(fā)大、中型的數(shù)據(jù)庫(kù)系統(tǒng)用ODBC數(shù)據(jù)庫(kù)更為適宜。而dBase和FoxPro數(shù)據(jù)庫(kù)由于已經(jīng)過(guò)時(shí),除非特別的情況,否則不要使用。在我們的例子中,當(dāng)然選用Access數(shù)據(jù)庫(kù)了。建立Access數(shù)據(jù)庫(kù)有兩種方法:一是在Microsoft Access中建立數(shù)據(jù)庫(kù)。點(diǎn)擊“新建”按鈕就可以建立新的表了(如圖1)。這里我們主要介紹第二種方法:使用可視化數(shù)據(jù)管理器,不需要編程就可創(chuàng)建數(shù)據(jù)庫(kù)??梢暬瘮?shù)據(jù)管理器是一個(gè)非常有用的應(yīng)用程序,它是VB企業(yè)版和專業(yè)版附帶的,在目錄..DevStudiovbsamplesVisdata下,其界面如下圖。
點(diǎn)擊菜單“文件”項(xiàng)下“新建”子項(xiàng)“Microsoft ACCESS”子項(xiàng)的“版本7.0 MDB”項(xiàng)。在彈出窗口中輸入新建數(shù)據(jù)庫(kù)的名稱“登記”,出現(xiàn)下面圖3所示窗口:
要生成新的表,右鍵單擊數(shù)據(jù)庫(kù)窗口彈出菜單,然后選擇“新表”命令,在隨后出現(xiàn)的“表結(jié)構(gòu)”對(duì)話框中建立所要的字段。每次向表中加入新的字段,單擊“增加字段”按鈕,會(huì)出現(xiàn)圖4 的“增加字段”對(duì)話框。
“增加字段”對(duì)話框中的選項(xiàng)如表10所示,根據(jù)字段的類型,有些選項(xiàng)是無(wú)效的,無(wú)法讀取。
在我們建立的登記數(shù)據(jù)庫(kù)中,各個(gè)字段的類型如表11。
要注意的是,由于字段登記號(hào)用來(lái)唯一標(biāo)志記錄的,因此,它不能由用戶輸入。所以在定義該字段時(shí)需要定義為L(zhǎng)ong數(shù)據(jù)類型,“自動(dòng)生成字段”項(xiàng)有效,并選中這一項(xiàng)。這樣當(dāng)用戶每輸入一條新記錄時(shí),系統(tǒng)就會(huì)在該字段上自動(dòng)輸入一個(gè)與其它記錄不同的值。
在ACCESS數(shù)據(jù)庫(kù)中,關(guān)鍵字是用索引實(shí)現(xiàn)的,作為編程人員在對(duì)表類型的記錄集編程時(shí),只需調(diào)用索引名。在查詢時(shí),Rushmore技術(shù)自動(dòng)用索引信息優(yōu)化查詢。完成表定義后,點(diǎn)擊“增加索引”按鈕,彈出如圖5所示窗口。
在窗口中右邊有三個(gè)選項(xiàng),其意義如表 12。
添加索引對(duì)話框選項(xiàng)
完成之后如圖6。
當(dāng)然,學(xué)會(huì)數(shù)據(jù)庫(kù)的建立也并非一朝一夕的事,讀者不妨多練習(xí)一下。下面你就可以運(yùn)行VB開(kāi)始我們的編程了。
四、千里相會(huì)
Visual Basic 數(shù)據(jù)庫(kù)應(yīng)用程序有三個(gè)部分,如圖7所示。
用戶程序是程序員開(kāi)發(fā)的,也是我們即將用VB來(lái)編寫(xiě)的部分。數(shù)據(jù)庫(kù)引擎是數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,使用它程序員可以用統(tǒng)一的格式訪問(wèn)各種數(shù)據(jù)庫(kù),不管這個(gè)數(shù)據(jù)庫(kù)是本地的 Visual Basic 數(shù)據(jù)庫(kù),還是所支持的其它任何格式的數(shù)據(jù)庫(kù)格式,所使用的數(shù)據(jù)訪問(wèn)對(duì)象和編程技術(shù)都是相同的。數(shù)據(jù)庫(kù)則是我們上面完成的部分。從這個(gè)結(jié)構(gòu)可以看出用戶與正在訪問(wèn)的特定數(shù)據(jù)庫(kù)無(wú)關(guān)。那我們?cè)谟肰B編寫(xiě)數(shù)據(jù)庫(kù)程序時(shí),就需要使程序能夠訪問(wèn)指定的數(shù)據(jù)庫(kù)。
如果是簡(jiǎn)單的數(shù)據(jù)庫(kù)應(yīng)用,可以使用 Data 控件來(lái)執(zhí)行大部分?jǐn)?shù)據(jù)訪問(wèn)操作,而根本不用編寫(xiě)代碼。與 Data 控件相捆綁的控件自動(dòng)顯示來(lái)自當(dāng)前記錄的一個(gè)或多個(gè)字段的數(shù)據(jù)。
DATA數(shù)據(jù)控件
屬性
CONNECT屬性 指定打開(kāi)的數(shù)據(jù)庫(kù)類型,并且包括參數(shù),如用戶和口令等。
例如:
打開(kāi)Access數(shù)據(jù)庫(kù)(缺省)
CONNECT=“ACCESS”
打開(kāi)ODBC數(shù)據(jù)庫(kù)
CONNECT=“ODBC;DATABASE=??;UID=??;PWD=??;DSN=??”
DATABASENAME屬性 確定數(shù)據(jù)控件訪問(wèn)哪一個(gè)數(shù)據(jù)庫(kù)。
對(duì)于多表數(shù)據(jù)庫(kù)它為具體的數(shù)據(jù)庫(kù)文件名,例如:ACCESS數(shù)據(jù)庫(kù)
DATABASENAME=“D:…DEMO.MDB”
對(duì)于單表數(shù)據(jù)庫(kù)它為具體的數(shù)據(jù)庫(kù)文件所在的目錄,而具體文件名放在RECORDSOURCE屬性中,例如:訪問(wèn)FOXPRO數(shù)據(jù)庫(kù)文件D:FOXDEMO.DBF
DATABASENAME=“D:FOX”
RECORDSOURCE=“DEMO”不帶文件擴(kuò)展名
RECORDSOURCE屬性
確定數(shù)據(jù)控件的記錄集,即:所要訪問(wèn)的數(shù)據(jù)內(nèi)容。它可以是一個(gè)表名、存儲(chǔ)查詢名或SQL語(yǔ)句。例如:訪問(wèn)Register表所有數(shù)據(jù) :
RECORDSOURCE=“Register”訪問(wèn)RC表中1973年以前出生的數(shù)據(jù):
RECORDSOURCE=“SELECT *FROM Register WHERE 20 and age” + Text1.Text
End If
If IsNumeric(Text2.Text) Then
n = ” age “引用”
3、選擇“microsoft activex data object 2.1 library”,點(diǎn)擊“確定”
4、在主界面上放嘩老一個(gè)按鈕
5、雙擊此按鈕
6、放下以亂運(yùn)升下內(nèi)容
Private Sub Command1_Click()
Dim conn As new ADODB.Connection
Dim rs As new ADODB.Recordset
‘定義數(shù)據(jù)庫(kù)連接字符串,該定義方式是SQL SERVER的,如果你用ACCESS的可以去YAHOO搜索
conn.Open “provider=sqloledb;driver={SQL Server};database=(數(shù)據(jù)庫(kù)名);server=(數(shù)據(jù)庫(kù)所在服務(wù)器名);uid=(用戶名);pwd=(密碼)”
‘定義你的SQL語(yǔ)句
tmp_sql = “select (字段名) from (你的表名)”
‘執(zhí)行你的SQL語(yǔ)句
rs.Open tmp_sql, conn
‘輸出你的SELECT結(jié)果
msgbox rs.fields(“(字段名)”)
‘執(zhí)行完畢關(guān)閉你的SQL語(yǔ)句
rs.Close
‘關(guān)閉數(shù)據(jù)庫(kù)連接
conn.Close
‘清除內(nèi)存
Set rs = Nothing
Set conn = Nothing
End Sub
VB的數(shù)據(jù)庫(kù)編程盡量用“工程”–>“引用”中的組件,而不悄如要用控件,這樣對(duì)你以后的靈活運(yùn)用數(shù)據(jù)庫(kù)有很大幫助。
創(chuàng)建數(shù)據(jù)庫(kù)代碼編寫(xiě)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于創(chuàng)建數(shù)據(jù)庫(kù)代碼編寫(xiě),學(xué)習(xí)數(shù)據(jù)庫(kù)編程:如何編寫(xiě)創(chuàng)建數(shù)據(jù)庫(kù)的代碼,怎么創(chuàng)建數(shù)據(jù)庫(kù),如何使用SQL代碼創(chuàng)建數(shù)據(jù)庫(kù),如何用VB建立數(shù)據(jù)庫(kù)的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
文章題目:學(xué)習(xí)數(shù)據(jù)庫(kù)編程:如何編寫(xiě)創(chuàng)建數(shù)據(jù)庫(kù)的代碼(創(chuàng)建數(shù)據(jù)庫(kù)代碼編寫(xiě))
轉(zhuǎn)載源于:http://m.5511xx.com/article/cdsojce.html


咨詢
建站咨詢
