请问findSql()能查到字段的名称跟数据类型吗?

#1 javaman

就是说根据我需要查询的sql语句然后查出字段名跟数据类型以及数据。。

有什么办法吗?

在线等待中......

说明:
请问在不知道表里面有什么字段,字段的类型已经里面的数据,
怎样能查出来呢?
然后以下面的形式输出来
字段1,字段2...
数据类型1,数据类型2...
数据1,数据2...
数据1,数据2...
......

2010-10-31 14:38:15

#2 jake

字段名和数据,直接findSql就能得到,结果数组的“键”是字段名,“值”是数据。
如果要查询数据类型,可以试试用
$g = spClass('lib_guestbook');
$cols = $g->_db->getTable(某表全名);
dump($cols);

getTable是SP的mysql驱动中获取表字段名和类型的函数。

2010-11-01 09:10:33

#3 javaman

字段名和数据,直接findSql就能得到,结果数组的“键”是字段名,“值”是数据。
如果要查询数据类型,可以 ...
jake 发表于 2010-11-1 09:10
getTable()获取的是字段名而已哦。。。输出的数组中没有数据类型的。

2010-11-01 15:21:09

#4 javaman

请问在不知道表里面有什么字段,字段的类型已经里面的数据,
怎样能查出来呢?
然后以下面的形式输出来
字段1,字段2...
数据类型1,数据类型2...
数据1,数据2...
数据1,数据2...
......

2010-11-01 15:38:00

#5 jake

findSql("DESCRIBE 表名")

2010-11-01 15:57:59

#6 javaman

findSql("DESCRIBE 表名")
jake 发表于 2010-11-1 15:57
这样不能拿到数据类型哦。。。能再讲详细点吗?谢谢啦。。。。万分感谢!

2010-11-01 16:41:08

#7 jake

没试过怎么知道不能拿到呢?

只好写多些吧,其实就是一句。

$g = spClass("lib_guestbook"); // 实例化一个model对象
$mytable = $g->findSql("DESCRIBE guestbook"); // 这是一个名字为guestbook的数据表
foreach( $mytable as $val ){
        echo "这里是字段:".$val['Field'].",我的类型是:".$val['Type']."
";
}

2010-11-01 16:51:29

#8 javaman

没试过怎么知道不能拿到呢?

只好写多些吧,其实就是一句。
jake 发表于 2010-11-1 16:51
我按照你这样做,还是没有输出
$mytable = $product->findSql("DESCRIBE guestbook");
  foreach($mytable as $val){
   echo "这里是字段:".$val['Field'].",我的类型是:".$val['Type']."
";
  }

能加你Q聊吗?我的Q:676296294

2010-11-01 17:10:51