第一阶段,最简单的数据库操作
1、需要建立数据库的信息表。
最基础的是
新建config.php文件
$dbhost="localhost"; $dbuser="root"; $dbpassword="123"; $dbdatabase="blogs";//数据库表的名称 $config_blogname="BLOG"; //网站名称 $config_author="None";//所有者 $config_basedir="www.blog/com/blog/"; //网站目录 $config_error="error.php"; //错误处理
2、新建一个conn.php包含confing.php ,并直接使用PHP中的连接数据库的函数连接数据库
require "config.php"; $db=mysql_connect($dbhost,$dbuser,$dbpassword) or die("数据库连接失败!".mysql_error()); mysql_select_db($dbdatabase,$db); mysql_query('set names utf8');
3、给数据库创建一个表
mysql_select_db("TestOne", $db); $createTB = "create table username( id int unsigned not null auto_increment primary key, name varchar (20), sex varchar (20), age int (10) )"; $dbTb=mysql_query($createTB); if($dbTb){ echo "数据表创建成功"; }else{ echo "数据表创建失败,错误原因为".mysql_error(); }
4、用PHP给mysql插入数据库
mysql_query("INSERT INTO username(id,name,sex,age)VALUES('1','peter','boy','12')");
这里面,username是一张表,表的属性有id,name等,这些属性不加引号,而插入的值要加引号。
这是最简单插入,拓展一点点,插入一个数组。和插入用户提交的数据呢。
附录一:常用的PHP中数据库连接函数
mysql_connect (a,b,c,d,e); a为主机名,b为用户名,c为用户名密码,d为new_link来使每一个连接数据库都为新的连接。e可在下列参数中选
MYSQL_CLIENT_SSL - 使用 SSL 加密
MYSQL_CLIENT_COMPRESS - 使用压缩协议
MYSQL_CLIENT_IGNORE_SPACE - 允许函数名后的间隔
MYSQL_CLIENT_INTERACTIVE - 允许关闭连接之前的交互超时非活动时间
mysql_query( a,b ); a为数据库的查询语句,b为数据库的连接,例如$db=mysql_connect(......);那么就可以领b为$db.
如果没指名,就使用上一个打开的连接。
mysql_select_db($db)//选择数据库。当使用mysql_connect后,选择其中的数据库
mysql_close($db);///数据库的断开
mysql_pconnect() 函数打开一个到 MySQL 服务器的持久连接。
区分:
mysql_pconnect() 和 mysql_connect() 非常相似,但有两个主要区别:
当连接的时候本函数将先尝试寻找一个在同一个主机上用同样的用户名和密码已经打开的(持久)连接,如果找到,则返回此连接标识而不打开新连接。
其次,当脚本执行完毕后到 SQL 服务器的连接不会被关闭,此连接将保持打开以备以后使用(mysql_close() 不会关闭由 mysql_pconnect() 建立的连接)。
mysql_list_dbs
mysql_num_rows
mysql_fetch_array
mysql_error()
问题:???
1、我用Navicat建立数据库,然后和netbeans相连接。怎么一设置密码就不能连接。
2、给一个连接建立数据库竟然出错。
$dbdatabase='TestTwo'; $createdb='create database'.$dbdatabase; $dbcreate=mysql_query($createdb,$db); if($dbcreate){ echo "数据库创建成功"; }else{ echo "创建数据库出错,错误号为".mysql_error()."</br>"; } 输出结果: 创建数据库出错,错误号为You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'databaseTestTwo' at line 1