Microsoft SQL Server
なにかと便利になってきたデータベース。
サーバ
クライアント

■エディションと機能

最大メモリ最大利用可能コアデータベースサイズManagement
Studio
全文検索Reporting
Services
Reporting Services
(SharePoint連携)
Express1GB1cpu/4coreまで10GB××××
Express with Tools1GB1cpu/4coreまで10GB×××
Express with
Advanced Services
1GB1cpu/4coreまで10GB×
Standard64GB4cpu/16coreまでほぼ無制限

小ネタ
■連番を振る
UPDATE table_a
SET table_a.ID=tmp.idx
FROM (
SELECT table_a.ID,table_a.MOL, ROW_NUMBER() OVER (ORDER BY table_a.ID,table_a.MOL) AS idx
FROM table_a
) AS tmp
WHERE
table_a.ID=tmp.ID AND table_a.MOL=tmp.MOL

■phpでバイナリ―データを扱う
データ登録
$i=1;
$f="imagefile.png";
$dsn = "sqlsrv:server=localhost\express;database=ChEMBL_13";
$dbh=new PDO($dsn,'foo','bar');
$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sth = $dbh->prepare("INSERT into IMAGETBL(ID, snapshot) values ( ?, ?)");
$fp = fopen($f,'rb');
$sth->bindParam(1, $id, PDO::PARAM_INT);
$sth->bindParam(2, $fp, PDO::PARAM_LOB,0,PDO::SQLSRV_ENCODING_BINARY );
$dbh->beginTransaction();
$sth->execute();
$dbh->commit();

データ参照
$dsn = "sqlsrv:server=localhost\express;database=ChEMBL_13";
$dbh=new PDO($dsn,'foo','bar');
$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sth=$dbh->prepare("SELECT snapshot FROM IMAGETBL where ID=1");
$sth->execute();
$sth->bindColumn(1,$image,PDO::PARAM_LOB,0, PDO::SQLSRV_ENCODING_BINARY);
$sth->fetch(PDO::FETCH_BOUND);
file_put_contents("imagefile.png",$image);


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2013-03-29 (金) 01:10:48 (1637d)