十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
創(chuàng)建數(shù)據(jù)庫
成都創(chuàng)新互聯(lián)是一家專業(yè)提供江南企業(yè)網(wǎng)站建設,專注與成都做網(wǎng)站、成都網(wǎng)站制作、成都h5網(wǎng)站建設、小程序制作等業(yè)務。10年已為江南眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設計公司優(yōu)惠進行中。
-- 指定數(shù)據(jù)庫名稱
-- (注:如果數(shù)據(jù)庫名中包含空格可以使用[]將其標示)
create database [Super WC]
-- 關于數(shù)據(jù)文件的定義
on
(
name = Super_WC_Data, -- 邏輯名
filename = 'C:\Super_WC_Data.MDF', -- 物理路徑以及物理名
size = 2MB, -- 初始大小
maxsize = 4MB, -- 最大限制
filegrowth = 1MB -- 增長大小
)
-- 關于日志文件的定義
log on
(
name = Super_WC_Log,
filename = 'C:\Super_WC_Log.LDF',
size = 3MB,
maxsize = 7MB,
filegrowth = 20% -- 增長比例
)-- 附加數(shù)據(jù)庫
execute sp_attach_db '[Super WC]', 'C:\Super_WC_Data.MDF','C:\Super_WC_Log.LDF'
-- 分離數(shù)據(jù)庫
execute sp_detach_db '[Super WC]'
-- 復制數(shù)據(jù)庫
execute master.dbo.xp_cmdshell 'copy C:\Super_WC_Data.MDF D:\Super_WC_Data.MDF'
execute master.dbo.xp_cmdshell 'copy C:\Super_WC_Log.LDF D:\Super_WC_Log.LDF'
(1)創(chuàng)建數(shù)據(jù)表創(chuàng)建一個數(shù)據(jù)表:學生(students)
結構如下:
字段 類型 是否允許為空 約束 備注
no char(4) No 主鍵 學號name nvarchar(8) No 唯一 姓名birthday datetime No 檢查(至少18年前) 生日age tinyint No 缺?。J等于當前時間減去生日) 年齡sex nchar(1) No 缺?。J'女') 性別phone char(11) Yes 檢查(要么沒有,要么長度等于11) 電話address nvarchar(24)No 地址沒有特別約束的情況:
create table student
(
no char(4) not null,
name nvarchar(8) not null,
birthday datetime not null,
phone char(11) null,
address nvarchar(24) null
)注意:沒有特別約束的情況下,創(chuàng)建數(shù)據(jù)表可以參考“企業(yè)管理器”中“設計表”的操作格式!包含約束的情況:
create table students
(
no char(4) primary key,
name nvarchar(8) unique,
birthday datetime check(datediff(year, birthday, getdate()) = 18),
age as datediff(year, birthday, getdate()),
sex nchar(1) default('女') check(sex = '女' or sex = '男'),
phone char(11) check((phone is null) or (len(phone) = 11)),
address nvarchar(24)
)
create table scores
(
no char(4) foreign key references students(no),
chinese numeric(4,1) check(chinese = 0 and chinese = 100),
english numeric(4,1) check(english = 0 and english = 100) ) 這個建庫 建表 建約束都有的 忘采納!
直接用SQL語言的create語句創(chuàng)建即可。
在MySQL提示中輸入命令之前,請記住所有的命令都是以分號結束的(否則將不會執(zhí)行)。另外,考慮輸入命令的時候使用大些字母,輸入數(shù)據(jù)庫對象使用小寫字母。但那不是必須的,只是方便你的閱讀。
現(xiàn)在,讓我們創(chuàng)建一個叫做xmodulo_DB的數(shù)據(jù)庫:
mysql CREATE DATABASE IF NOT EXISTS xmodulo_DB;
1,
mysql
-uroot
-pxxxx
//登陸數(shù)據(jù)庫
2,
show
databases;
//查看數(shù)據(jù)庫,例如要在test庫中建表
3,
use
test;//進入test
4,
create
table
users(
//例如要建立users表,下面是建立字段
5,
id
int(10)
unsigned
not
null
auto_increment,
6,
username
varchar(20)
not
null,
7,
userpassword
varchar(20)
not
null,
8,
varchar(20)
not
null,
9,
primary
key
(id));
//這樣就建立好了一個基本完整的表了
注:我的運行環(huán)境是widnows xp professional + MySQL5.0
一, 創(chuàng)建用戶:
命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
說明:username - 你將創(chuàng)建的用戶名, host -
指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost, 如果想讓該用戶可以從任意遠程主機登陸,可以使用通配符%.
password - 該用戶的登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二,授權:
命令:GRANT privileges ON databasename.tablename TO 'username'@'host'
說明: privileges - 用戶的操作權限,如SELECT , INSERT , UPDATE 等(詳細列表見該文最后面).如果要授予所的權限則使用ALL.;databasename - 數(shù)據(jù)庫名,tablename-表名,如果要授予該用戶對所有數(shù)據(jù)庫和表的相應操作權限則可用*表示, 如*.*.
例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:用以上命令授權的用戶不能給其它用戶授權,如果想讓該用戶可以授權,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三.設置與更改用戶密碼
命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');如果是當前登陸用戶用SET PASSWORD = PASSWORD("newpassword");
例子: SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
四.撤銷用戶權限
命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';
說明: privilege, databasename, tablename - 同授權部分.
例子: REVOKE SELECT ON *.* FROM 'pig'@'%';
注意: 假如你在給用戶'pig'@'%'授權的時候是這樣的(或類似的):GRANT SELECT ON test.user TO 'pig'@'%', 則在使用REVOKE SELECT ON *.* FROM 'pig'@'%';命令并不能撤銷該用戶對test數(shù)據(jù)庫中user表的SELECT 操作.相反,如果授權使用的是GRANT SELECT ON *.* TO 'pig'@'%';則REVOKE SELECT ON test.user FROM 'pig'@'%';命令也不能撤銷該用戶對test數(shù)據(jù)庫中user表的Select 權限.
具體信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.
五.刪除用戶
命令: DROP USER 'username'@'host';
第一步:登陸到MySQL服務器
首先,你需要使用root用戶登陸進你的MySQL數(shù)據(jù)庫,如下:
$ mysql -u root -h -p
請注意:為了能登進遠程的MySQL服務器,你需要開啟服務器上的遠程訪問,如果你想調(diào)用同一主機上的MySQL服務器,你可以省略 "-h " 參數(shù)
$ mysql -u root -p
你將需要輸入MySQL服務器的密碼,如果認證成功,MySQL提示將會出現(xiàn)。
第二步:創(chuàng)建一個MySQL數(shù)據(jù)庫
在MySQL提示中輸入命令之前,請記住所有的命令都是以分號結束的(否則將不會執(zhí)行)。另外,考慮輸入命令的時候使用大些字母,輸入數(shù)據(jù)庫對象使用小寫字母。但那不是必須的,只是方便的閱讀。
現(xiàn)在,創(chuàng)建一個叫做xmodulo_DB的數(shù)據(jù)庫:
mysql CREATE DATABASE IF NOT EXISTS xmodulo_DB;
第三步:創(chuàng)建一個數(shù)據(jù)庫表
為了達到演示的目的,創(chuàng)建一個叫做posts_tbl的表,表里會存儲關于文章的如下信息:
文章的標題
作者的名字
作者的姓
文章可用或者不可用
文章創(chuàng)建的日期
這個過程分兩步執(zhí)行:
首先,選擇需要使用的數(shù)據(jù)庫:
mysql USE xmodulo_DB;
第四步:創(chuàng)建一個用戶,并授予權限
當涉及到訪問新創(chuàng)的數(shù)據(jù)庫和表的時候,創(chuàng)建一個新用戶是一個很好的主意。這樣做就可以讓用戶在沒有整個MySQL服務器權限的情況下,去訪問那個數(shù)據(jù)庫(而且只能是那個數(shù)據(jù)庫)
你可以創(chuàng)建新用戶,授予權限,并且使改變生效:
mysql GRANT ALL PRIVILEGES ON xmodulo_DB.* TO 'new_user'@'%' IDENTIFIED
BY 'new_password';
mysql FLUSH PRIVILEGES;
'newuser'和'newpassword'分別指的是新的用戶名和他的密碼。這條信息將會被保存在mysql.user表中,而且密碼會被加密。
第五步:測試
先插入一個虛擬的記錄到posts_tbl表:
mysql USE xmodulo_DB;
mysql INSERT INTO posts_tbl (content, author_FirstName, author_Las
tName)
VALUES ('Hi! This is some dummy text.', 'Gabriel', 'Canepa');
然后查看posts_tbl表中的所有記錄:
mysql SELECT * FROM posts_tbl;