PHP编程:Mysql数据库进修心得(3)
学习如何将PHP与HTML结合起来完成简单动态页面三.Mysql知识
(一)字段类型
1.INT[(M)]
正常巨细整数类型
2.DOUBLE[(M,D)]
正常巨细(双严密)浮点数字类型
3.DATE
日期类型。撑持的局限是'1000-01-01'到'9999-12-31'。MySQL以'YYYY-MM-DD'格局来显示DATE值,然而答应你利用字符串或数字把值赋给 DATE列
4.CHAR(M)
定长字符串类型,当存储时,老是是用空格填满右侧到指定的长度
5.BLOB TEXT
BLOB或TEXT类型,最大长度为65535(2^16-1)个字符。
6.VARCHAR
变长字符串类型,最经常使用的类型。
(二)根基操作
1:显示数据库
mysql>SHOW DATABASES;
2:以后选择的数据库,
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| test |
+------------+
3.以后数据库包括的表信息:
mysql> SHOW TABLES;
+---------------------+
| Tables in test |
+---------------------+
| mytable1 |
| mytable2 |
+---------------------+
4.获得表布局
mysql> desc mytable1;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| s1 | varchar(20) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
5.创立表
表是数据库的最根基元素之一,表与表之间可以互相自力,也能够互相联系关系。创立表的根基语法以下:
create table table_name
(column_name datatype {identity |null|not null},
…)
个中参数table_name和column_name必需知足用户数据库中的辨认器(identifier)的请求,参数datatype是一个尺度的SQL类型或由用户数 据库供应的类型。用户要利用non-null从句为各字段输出数据。
create table还有一些其他选项,如创立一时表和利用select子句从其他的表中读取某些字段构成新表等。还有,在创立表是可用PRIMARY KEY、KEY、INDEX等标识符设定某些字段为主键或索引等。书写上要注重:在一对圆括号里的列出完全的字段清单。字段名间用逗号离隔 。字段名间的逗号后要加一个空格。最初一个字段名后不必逗号。一切的SQL陈说都以分号";"停止。
例:
mysql>CREATE TABLE guest (name varchar(10),sex varchar(2),age int(3),career varchar(10));
6.创立索引
索援用于对数据库的查询。普通数据库建有多种索引计划,每种计划都精于某一特定的查询类。索引可以减速对数据库的查询进程。创立 索引的根基语法以下:
create index index_name
on table_name (col_name[(length)],... )
例:
mysql> CREATE INDEX number ON guest (number(10));
7.履行查询
查询是利用最多的SQL号令。查询数据库需求凭仗布局、索引和字段类型等要素。大多半数据库含有一个优化器(optimizer),把用户的查 询语句转换成可选的模式,以进步查询效力。
值得注重的是MySQL不撑持SQL92尺度的嵌套的where子句,即它只撑持一个where子句。其根基语法以下:
SELECT
select_expression,...
[FROM table_references
,...]
rows]
]
个中where从句是界说选择尺度的中央,where_definition可以有分歧的格局,但都遵守上面的模式:
字段名操作表达式
字段名操作字段名
在第一种模式下,尺度把字段的值与表达式停止对照;在第二种模式下,把两个字段的值停止对照。依据所对照的数据类型, search_condition中的操作能够选以下几种:
=反省是不是相等
!=反省是不是不等
> (或>=)反省右边值是不是大于(或大于等于)右侧值
< (或<=)反省右边值是不是小于(或小于等于)右侧值
between反省右边值是不是在某个局限内
in反省右边是不是某个特定集的成员
like反省右边是不是为右侧的子串
is null反省右边是不是为空值
在这里,可以用通配符_代表任何一个字符,%代表任何字符串。利用关头字、和可以生成庞杂的词,它们运转反省时利用 布尔表达式的多重尺度集。
例:
mysql> select t1.name, t2.salary from employee AS t1, info AS t2swherest1.name = t2.name;
mysql> select college, region, seed from tournament
ORDER BY region, seed;
mysql> select col_name from tbl_nameswherescol_name > 0;
8.改动表布局
在数据库的利用过程当中,有时需求改动它的表布局,包含改动字段名,乃至改动分歧数据库字段间的关系。可以完成上述改动的号令是 alter,其根基语法以下:
alter table table_name alter_spec [, alter_spec ...]
例:
mysql> alter table dbname add column userid int(11) not null primary key auto_increment;
如许,就在表dbname中添加了一个字段userid,类型为int(11)。
9.修正表中数据
在利用数据库过程当中,常常要修正其表中的数据,好比往表中添加新数据,删除表华夏无数据,或对表华夏无数据停止更改。它们的根基 语法以下:
数据添加:
insert table_name [(column(s))]
values (expression(s))
例:
mysql>insertsintosmydatabase values('php','mysql','asp','sqlserver','jsp','oracle');
给你的建议是,有些最常用的语句是需要记住的 比如if for while这些、其他的一般语句你只要知道有这个函数或者有这个功能就可以了,当你用的时候你可以凭借记忆搜索就可以了。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、 真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎, 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 兴趣是最好的老师,百度是最好的词典。 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。 个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。 本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 爱上php,他也会爱上你。 基础有没有对学习php没有太大区别,关键是兴趣。 遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
页:
[1]