Delphi连接MySql数据库房

    在看Delpih6数据库开发实例导航这本书时,里面的数据库管理系统用的InterBase,但是Delphi11中已经没有这个东西了,我就想到利用MS的access但是里面有很多的SQL语句不支持,比如设置字段的默认值等,后来我想到连接到MySQL,也是在网上查了很我资料。现在再学习一下:

一、打开phpstudy 启动 WNMP

/*创建学生表*/
create table STUDENT(
    ID CHAR(6) NOT NULL,
    NAME VARCHAR(20) NOT NULL,
    SEX CHAR(1) DEFAULT 'M' NOT NULL,
    CLASS CHAR(4),
    DEPARTMENT SMALLINT NOT NULL,
    BIRTHDAY DATE NOT NULL,
    NATIVE_PLACE VARCHAR(20) NOT NULL
);
ALTER TABLE STUDENT
ADD CONSTRAINT ID
PRIMARY KEY(ID);


/*创建学籍变更信息表*/
CREATE TABLE CHANGE_B(
    ID SMALLINT NOT NULL,
    STUDENT CHAR(6) NOT NULL,
    CHANGE_B CHAR(1) NOT NULL,
    REC_TIME DATE NOT NULL,
    DESCRIPTION VARCHAR(4000)
);
ALTER TABLE CHANGE_B
ADD CONSTRAINT CHANGE_B_ID
PRIMARY KEY(ID);


/*奖励记录信息表*/
CREATE TABLE REWARD(
    ID SMALLINT NOT NULL,
    STUDENT CHAR(6) NOT NULL,
    LEVELS CHAR(1) NOT NULL,
    REC_TIME DATE NOT NULL,
    DESCRIPTION VARCHAR(4000)
);
ALTER TABLE REWARD
ADD CONSTRAINT REWARD_ID
PRIMARY KEY(ID);


/*处罚记录信息表*/
CREATE TABLE PUNISHMENT(
    ID SMALLINT NOT NULL,
    STUDENT CHAR(6) NOT NULL,
    LEVELS CHAR(1) NOT NULL,
    REC_TIME DATE NOT NULL,
    ENABLE CHAR(1) DEFAULT 'T' NOT NULL,
    DESCRIPTION VARCHAR(4000)
);
ALTER TABLE PUNISHMENT
ADD CONSTRAINT PUNISHMENT_ID
PRIMARY KEY(ID);


/*创建院系信息表*/
CREATE TABLE DEPARTMENT(
    ID SMALLINT NOT NULL,
    NAME VARCHAR(50) NOT NULL
);
ALTER TABLE DEPARTMENT
ADD CONSTRAINT DEPARTMENT_ID
PRIMARY KEY(ID );


/*创建班级信息表*/
CREATE TABLE CLASS(
    ID CHAR(4) NOT NULL,
    NAME VARCHAR(50) NOT NULL,
    MONITOR  CHAR(6),
    DEPARTMENT SMALLINT NOT NULL 
);
ALTER TABLE CLASS
ADD CONSTRAINT CLASS_ID
PRIMARY KEY(ID);


/*创建学籍变动代码表*/
CREATE TABLE CHANGE_B_CODE(
    CODE CHAR(1) NOT NULL,
    DESCRIPTION VARCHAR(50)
);
ALTER TABLE CHANGE_B_CODE
ADD CONSTRAINT CHANGE_B_CODE_CODE
PRIMARY KEY(CODE);


/*创建奖励等级代码表*/
CREATE TABLE REWARD_LEVELS(
    CODE CHAR(1) NOT NULL,
    DESCRIPTION VARCHAR(50) NOT NULL
);
ALTER TABLE REWARD_LEVELS
ADD CONSTRAINT REWARD_CODE_LEVELS
PRIMARY KEY(CODE);


/*创建惩罚等级代码表*/
CREATE TABLE PUNISHMENT_LEVELS(
    CODE CHAR(1) NOT NULL,
    DESCRIPTION VARCHAR(50) NOT NULL
);
ALTER TABLE PUNISHMENT_LEVELS
ADD CONSTRAINT PUNISHMENT_CODE_LEVELS
PRIMARY KEY(CODE);


/*创建计数保存表*/
CREATE TABLE COUNTER(
    ID CHAR(1) NOT NULL,
    COUNTER_VALUE SMALLINT NOT NULL
);
ALTER TABLE COUNTER
ADD CONSTRAINT COUNTER_ID
PRIMARY KEY(ID);

三、下面开始怎么用Delphi11连接MySql数据库房中的student表

        1、在窗体上添加一个FDconnection1,设置其Params下面的属性:

         

先设置右边的属性,CharacterSet是设置字符编码为utf8,是中文支持。最后设置connected 为True 时输入Mysql的Login User name:root, Password:root,点击ok。这样连接到mysql了。

四、要把数据显示出来

        1、添加FDQuerry,设置connect属性为:FDConnection1,

                                        设置select * from student,

             也可双击FDQuerry1控件后,在对话框中设置,测试:

    5、加入DataSource1控件,设置其DataSet为FDQuery1,

          加入DBGrid1控件,设置其DataSource为DataSource1,

          之后DBGrid1控件显示上图中的RecordSet中的内容:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值