php odbc_connect()函数说明与实例代码

 更新时间:2016年11月25日 16:38  点击:1459
odbc_connect() 函数用于连接到 ODBC 数据源。该函数有四个参数:数据源名、用户名、密码以及可选的指针类型参数。

odbc_exec() 函数用于执行 sql 语句

$db_user="dbuser";         //定义连接用户名
$db_pass="dbpass";         //连接用户对应的密码
$dsn="dsn";          //定义dsn资料来源
if(odbc_connect($dsn,$db_user,$db_pass))    //对odbc数据源进行连接
{
  echo "成功连接到odbc数据源";      //如果成功输出内容
}
else
{
  echo "连接到odbc时出现问题!";     //如果失败输出内容
}

odbc_close_all();        //关闭所有打开的连接
echo "所有打开的odbc连接都已经被关闭!";   //执行函数后输出内容


看一个更高级的与主机连接

$db_host="server.mynetwork";        //定义主机名
$db_user="dbuser";          //定义连接用户名
$db_pass="dbpass";          //定义用户对应的密码
$dsn="dsn";           //定义dsn
$result=odbc_pconnect($dsn,$db_user,$db_pass);    //打开持续有效的odbc连接
if($result)            //对结果进行判断
{
  echo "打开一个持续有效的连接";       //成功执行输出内容
}
echo "<br>";
if(odbc_close($result))         //尝试关闭连接
{
  echo "关闭了?";          //如果成功关闭输出内容
}
else
{
  echo "不能关!";          //如果关闭失败输出内容
}

查询数据库教程存

数据源进行连接

$my_sql="select * from usertable";      //定义sql语句
$result=odbc_do($myconn,$my_sql);     //执行sql语句
echo odbc_num_rows($result);
echo "<table border="1">n";
echo "<tr>n";
echo "<td>id号</td>n";
echo "<td>name</td>n";
echo "<td>address</td>n";
echo "</tr>n";
while(odbc_fetch_row($result))
{
  echo "<tr>n";
  echo "<td>".odbc_result($result,1)."</td>n";
  echo "<td>".odbc_result($result,2)."</td>n";
  echo "<td>".odbc_result($result,3)."</td>n";
  echo "</tr>n";
}
echo "</table>";


一些相关

odbc_free_result($result);        //释放执行sql语句占用的内存
echo "已经成功释放结果集占用的内存!";
odbc_rollback($myconn)取消所有未提交的操作
odbc_commit($myconn) //提交所有未提交的操作
odbc_autocommit($myconn,false);      //禁止自动commit
odbc_columnprivileges($myconn,"dbuser","管理员","usertable","name"); //列出给定表的列和权限
$result=odbc_columns($myconn);      //列出指定表的列的名称
echo odbc_result_all($result); 

这是一款php中的mysql数据库连接文件代码,如果你正在找这样功能的代码,可以进来看看,非常完整文件

class mysql {
 private $db_host;     //主机地址
 private $db_user;     //用户名
 private $db_pass;     //连接密码
 private $db_name;     //名称
 private $db_charset;  //编码

 private $conn;
 private $query_id;   //用于判断sql语句是否执行成功
 private $result;     //结果集
 private $num_rows;   //结果集中行的数目,仅对select有效
 private $insert_id;  //上一步 insert 操作产生的 id

// 构造/析构函数
 function __construct ($db_host,$db_user,$db_pass,$db_name,$db_charset,$conn) {
 $this->db_host = $db_host ;
 $this->db_user = $db_user ;
 $this->db_pass = $db_pass ;
 $this->db_name = $db_name ;
 $this->db_charset = $db_charset ;
 $this->conn = $conn ;
 $this->connect();
 }

 function __destruct () {
 @mysql_close($this->conn);
 }

// 连接/选择数据库
 public function connect () {
 if ($this->conn == 'pconn') {
  @$this->conn = mysql_pconnect($this->db_host,$this->db_user,$this->db_pass);
 } else {
  @$this->conn = mysql_connect($this->db_host,$this->db_user,$this->db_pass);
 }
 if (!$this->conn) {
  $this->show_error('数据库-连接失败:用户名或密码错误!');
 }
 if (!@mysql_select_db($this->db_name,$this->conn)) {
  $this->show_error("数据库-选择失败:数据库 $this->db_name 不可用");
 }
 mysql_query("set names $this->db_charset");
 return $this->conn;
 }

// query方法
 public function query ($sql) {
 if ($this->query_id) $this->free_result();
 $this->query_id = @mysql_query($sql,$this->conn);
 if (!$this->query_id) $this->show_error("sql语句 <b>"$sql"</b> 执行时遇到错误");
 return $this->query_id;
 }

// 查询所有
 public function findall ($table_name) {
 $this->query("select * from $table_name");
 }

// mysql_fetch_array
 public function fetch_array () {
 if ($this->query_id) {
  $this->result = mysql_fetch_array($this->query_id);
  return $this->result;
 }
 }

// ......

 public function fetch_assoc () {
 if ($this->query_id) {
  $this->result = mysql_fetch_assoc($this->query_id);
  return $this->result;
 }
 }

 public function fetch_row () {
 if ($this->query_id) {
  $this->result = mysql_fetch_row($this->query_id);
  return $this->result;
 }
 }

 public function fetch_object () {
 if ($this->query_id) {
  $this->result = mysql_fetch_object($this->query_id);
  return $this->result;
 }
 }

// 获取 num_rows
 public function num_rows () {
 if ($this->query_id) {
  $this->num_rows = mysql_num_rows($this->query_id);
  return $this->num_rows;
 }
 }

// 获取 insert_id
 public function insert_id () {
 return $this->insert_id = mysql_insert_id();
 }

// 显示共有多少张表
 public function show_tables () {
 $this->query("show tables");
 if ($this->query_id) {
  echo "数据库 $this->db_name 共有 ".$this->num_rows($this->query_id)." 张表<br/>";
  $i = 1;
  while ($row = $this->fetch_array($this->query_id)){
    echo "$i -- $row[0]<br/>";
    $i ++;
  }
 }
 }

// 显示共有多少个数据库
 public function show_dbs(){
 $this->query("show databases");
 if ($this->query_id) {
  echo "共有数据库 ".$this->num_rows($this->query_id)." 个<br/>";
  $i = 1;
  while ($this->row = $this->fetch_array($this->query_id)){
    echo "$i -- ".$this->row[database]."<br />";
    $i ++;
  }
 }
 }

// 删除数据库:返回删除结果
 public function drop_db ($db_name='') {
  if ($db_name == '') {
   $db_name = $this->db_name;//默认删除当前数据库
  $this->query("drop database $db_name");
 }else {
  $this->query("drop database $db_name");
 }
 if ($this->query_id) {
  return "数据库 $db_name 删除成功";
 }else {
  $this->show_error("数据库 $db_name 删除失败");
 }
}

// 删除数据表:返回删除结果
 public function drop_table ($table_name) {
 $this->query("drop table $table_name");
  if ($this->query_id) {
  return "数据表 $table_name 删除成功";
 }else {
  $this->show_error("数据表 $table_name 删除失败");
 }

}

// 创建数据库
public function create_db ($db_name) {
 $this->query("create database $db_name");
 if($this->query_id){
  return "数据库 $db_name 创建成功";
 }else {
  $this->show_error("数据库 $db_name 创建失败");
 }
}

// 获取数据库版本
 public function get_info(){
 echo mysql_get_server_info();
 }

// 显示错误信息
 public function show_error ($msg) {
 $errinfo = mysql_error();
 echo "错误:$msg <br/> 返回:$errinfo<p>";
 }

// 释放内存
 public function free_result () {
 if ( @mysql_free_result($this->query_id) )
 unset ($this->result);
 $this->query_id = 0;
 }

} // end class

 

在php中连接mysql数据库有二种如有mysql_connect 与mysql_pconnect,一个是软连接,一个是持续连接,两者区别在于一个当页面浏览完自动关闭已经打开的MySQL连接页mysql_pconnect如果不关闭就一直连接。

$hostname="localhost";        //定义连接到的mysql服务器名
$username="root";         //定义用于连接的用户名
$password="";          //定义用于连接的密码
$link=mysql_connect($hostname,$username,$password);  //连接到本地mysql服务器
if($link)           //如果成功连接
{
  echo "成功连接";         //输出内容
}
else            //如果连接失败
{
  echo "连接失败";         //输出内容
}
//mysql_close($link) //关闭已经打开的mysql连接

//mysql_pconnect连接mysql数据库

$link=mysql_pconnect($hostname,$username,$password);  //打开持续性连接
if(!$link)            //如果不能连接
{
  die('不能连接'.mysql_error());        //输出信息
  exit();            //结束所有php操作
}
echo '持续连接成功';

/*
下面看软连接查询数据库内容

*/

$link=mysql_connect($hostname,$username,$password)or die("could not connect:".mysql_error());
//转换编码以支持中文
mysql_query('set   names   gb2312;');
//选择操作库test
mysql_select_db("test")or die("could not select database:".mysql_error());
//执行sql查询,从表中选择名字
$query="select name from friends";
$result=mysql_query($query)or die("query failed:".mysql_error());
//匹配结果集到行循环输出内容
for($i=mysql_num_rows($result)-1;$i>=0;$i--)
{
//移动内部结果的指针,如果没有结果则输内容
  if(!mysql_data_seek($result,$i))
  {
    echo "cannot seek to row $i:".mysql_error()."n";
    continue;
  }
//从查询结果取得一行作为对象
  if(!($row=mysql_fetch_object($result)))
  continue;
//输出结果内容
  echo "$row->name<br/>n";
}
//释放结果集
mysql_free_result($result);

/*
其它操作

$escaped_item=mysql_escape_string($str);    //将字符串转义
printf("escaped string:%sn",$escaped_item);    //输出转义后的结果

$mydb=mysql_list_dbs($link);      //列出数据库
while($result=mysql_fetch_object($mydb))   //通过循环遍历结果集并赋值给对象
{
  echo $result->database."n";      //输出对象内容
  echo "<br>";
}

php与mysql是黄金组合,现在我们来讲一下关于php查询mysql数据库记录实现,主要会用到函数mysql_connect mysql_query mysql_select_db mysql_fetch_array四个php函数,下面看实现。
$hostname="localhost";         //定义连接到的mysql服务器名
$username="root";          //定义用于连接的用户名
$password="";           //定义用于连接的密码
$link=mysql_connect($hostname,$username,$password);   //打开msql连接
mysql_query('set names gb2312;');      //转换编码以支持中文
mysql_select_db("test");         //选择操作库为test
$query="select * from friends";       //定义sql
$result=mysql_query($query);        //发送sql查询
while($rows=mysql_fetch_array($result))
{
  echo "id为:".$rows[id];
  echo "<br>www.111cn.netn";
  echo "name为:".$rows[name];
  echo "<br>n";
  echo "sex为:".$rows[sex];
  echo "<br>n";
  echo "birthday为:".$rows[birthday];
  echo "<br>n";
  echo "address为:".$rows[address];
  echo "<p>n";
}
//释放结果集
mysql_free_result($result);


//条件查询

$query="select * from friends where id=1";     //定义sql
$result= mysql_query($query);     //发送sql查询
echo mysql_result($result,0,"name");       //输出name结果
echo "<br>";
echo mysql_result($result,0,"birthday");      //输出birthday结果
echo "<br>";
echo mysql_result($result,0,"sex");       //输出sex结果
echo "<br>";
echo mysql_result($result,0,"address");      //输出address结果

//相关操作

$conn=mysql_connect('localhost','root','');       //打开连接
$fields=mysql_list_fields("test","friends",$conn);     //列出test库friends表的信息
$cols=mysql_num_fields($fields);        //获取结果数
for($i=0;$i<$cols;$i++)          //循环
{
  echo mysql_field_name($fields,$i)."n";       //输出字段名
  echo "<p>";
}


/*
总结

在php中查询数据库记录是相当简单且常用的,只要你记录上面几个函数就可以实现数据查询了。
*/

这里主要是讲关于在php中数据库连接与数据库选择以及显示当前数据库所有表三个实用函数,有需要的朋友可以看看。

$phps教程ql_user = "root";
$phpsql_password = "root";
$phpsql_loc = "";
$phpsql_db = "";


function phpsql_connect($location, $username, $password){
 global $phpsql_loc, $phpsql_user, $phpsql_password;
 if($phpsql_user != $username || $phpsql_password != $password)
 phpsql_error("cannot access to phpsql!(wrong username/wrong password)");
 define(phpsql_loc, $location);
 $phpsql_loc = $location;
}
function phpsql_select_db($db){
 global $phpsql_db;
 define(phpsql_db, $db);
 $phpsql_db = $db;
}
function phpsql_list_table(){
 global $phpsql_loc, $phpsql_db;
 $i = 0;
 if(!($handle = @opendir($phpsql_loc."/".$phpsql_db)))
 return 0;
 while(($file = readdir($handle)) !== false){
  if($file != "." && $file != "..")
  {
  $table[$i ++] = $file;
  }
 }
 return $table;
}

[!--infotagslink--]

相关文章

  • mysql_connect与mysql_pconnect的区别详解

    在mysql中我们会看到有两种常用的数据库连接模式,一种是长久连接,另一各是页面访问完之后就断了连接,下面我来分别介绍mysql_connect与mysql_pconnect的区别,有需要了解...2016-11-25
  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • 不打开网页直接查看网站的源代码

      有一种方法,可以不打开网站而直接查看到这个网站的源代码..   这样可以有效地防止误入恶意网站...   在浏览器地址栏输入:   view-source:http://...2016-09-20
  • php 调用goolge地图代码

    <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
  • JS基于Mootools实现的个性菜单效果代码

    本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
  • JS+CSS实现分类动态选择及移动功能效果代码

    本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
  • JS实现自定义简单网页软键盘效果代码

    本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
  • php 取除连续空格与换行代码

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • PHP实现清除wordpress里恶意代码

    公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04
  • js识别uc浏览器的代码

    其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08