約 3,117,859 件
https://w.atwiki.jp/piyopico/pages/38.html
SQLServer Transact-SQL リファレンス (データベース エンジン) http //msdn.microsoft.com/ja-jp/library/bb510741.aspx raiserror [#da7d5309] http //d.hatena.ne.jp/rezev_hikaru/20100316
https://w.atwiki.jp/pgvb2010tj/pages/27.html
マイクロソフトとSybaseが独自に拡張したSQL言語 Like SUBSTRING RANK関数 DENSE_RANK関数 ISNULL CREATE TABLE DATE 型 CONVERT 前0埋め 除算 DATEDIFF 日付差を求める CREATE VIEW smalldatetime テーブルのコピー Like WHERE fieldname LIKE %ab% SUBSTRING 文字列定数 abcdef の 2、3、4 番目の文字を表示 SELECT SUBSTRING( abcdef , 2, 3); RANK関数 複数の行が 1 つの順位を分け合う場合は、それぞれの行に同じ順位が付けられます。 RANK 関数は連続した整数を返すとは限りません。 SELECT RANK() OVER (PARTITION BY ID ORDER BY Quantity DESC) FROM DENSE_RANK関数 同じパーティションで複数の行が 1 つの順位を分け合う場合は、それぞれの行に同じ順位が付けられます。 常に番号のギャップが発生しない連続する順位番号が返されます。 DENSE_RANK() OVER (PARTITION BY field1, field2 ORDER BY field3) ISNULL SELECT IsNull(fieldA, 1) FROM CREATE TABLE CREATE TABLE [TableName] field1 nvarchar(2) NOT NULL DEFAULT ( ), field1 int IDENTITY(1,1) NOT NULL, 自動的に番号を生成し、保存する機能を有効 field1 smallint NOT NULL DEFAULT (*1), field1 date NULL, field1 datetime NOT NULL DEFAULT (getdate()), PRIMARY KEY([単位CD])); DATE 型 CONVERT CONVERT(VARCHAR,GETDATE(),111) 2010/09/01 CONVERT(VARCHAR,GETDATE(),120) 2010-09-01 12 34 61 CONVERT(VARCHAR,GETDATE(),112) 20100901 前0埋め RIGHT( 000000 + field, 6) 除算 SELECT 912 % 100 結果 12 DATEDIFF 日付差を求める DATEDIFF(MONTH, 日付1, 日付2) CREATE VIEW CommandにParameter の値があるとエラーとなる ViewにParameterの概念はない CREATE VIEW viewname AS SELECT * FROM Tablename smalldatetime 日付抽出方法 日付 = 2011/02/20 23 59 00 テーブルのコピー intoだけでテーブルは自動createする。なのでSQL Serverでは、create tableは必要ない。 select * into xxxTBL_BACKUP from xxxTBL
https://w.atwiki.jp/piyopico/pages/39.html
SQLServer 各種ログ確認 以下のビューで送信したメールの情報を確認することができる msdb.dbo.sysmail_allitems msdb.dbo.sysmail_faileditems msdb.dbo.sysmail_sentitems msdb.dbo.sysmail_unsentitems msdb.dbo.sysmail_event_log ManagementStudioで「管理」→「データベースメール」を右クリックして「データベースメールのログを表示」でも閲覧可能 データベース メールで処理されたメッセージごとに 1 行のデータを格納します。このビューは、すべてのメッセージの状態を確認するときに使用できます。 状態が失敗となっているメッセージだけを確認するには、sysmail_faileditems (Transact-SQL) を使用します。 未送信のメッセージだけを確認するには、sysmail_unsentitems (Transact-SQL) を使用します。 送信済みのメッセージだけを確認するには、sysmail_sentitems (Transact-SQL) を使用します。 http //msdn.microsoft.com/ja-jp/library/ms175056.aspx 管理- データベースメールでもろもろ設定 リトライ回数が指定できる
https://w.atwiki.jp/lmes2/pages/217.html
SQLServer 参考サイト Transact-SQL リファレンス
https://w.atwiki.jp/tak_is/pages/16.html
Knowledge オブジェクト抽出SQLまとめ カラムの照合順序の確認 SQLServer2012ライセンス SQLServerのバージョン関連 bcpコマンド 指定フォルダのSQLをまとめて実行(バッチファイル) Transact-SQL プログラミング 複数行をカンマ区切りで集約する ##
https://w.atwiki.jp/piyopico/pages/37.html
FrontPage ページ新規作成 Transact-SQL データベースメール 検索条件 監視 参考WEB http //sql-server-performance.com SSIS SQL Server 2005のSSIS自習書 http //msdn.microsoft.com/ja-jp/sqlserver/cc720684.aspx http //technet.microsoft.com/ja-jp/sqlserver/cc721623.aspx
https://w.atwiki.jp/sevenlives/pages/2568.html
Transact-SQL? Microsoft
https://w.atwiki.jp/lmes2/pages/222.html
SqlTransaction クラス 概要 .NET Framework で、トランザクション処理を行う方法のひとつ。 C#でトランザクションを行うには、これ以外に、 TSQL内で BEGIN TRANSACTION~ によるデータベーストランザクション。 @Pageディレクティブで、Transaction属性によるトランザクション。 がある。 参照 .NET Framework クラス ライブラリ SqlTransaction クラス 参考 @IT:.NETエンタープライズWebアプリケーション開発技術大全 接続型データアクセスと短時間トランザクション 元ネタ トランザクションの実行 - tony-xの備忘録 前提条件 新しいプロジェクトの作成 手順 以下のソースは、元ネタのURLから転載。 ※ASP.NETではない(Console.WriteLine()とか。)がトランザクションの使い方としては同じ。 using (SqlConnection connection = new SqlConnection(connectString)) { connection.Open(); // トランザクション開始 SqlTransaction sqlTran = connection.BeginTransaction(); // SqlCommand クラスにトランザクションを設定 SqlCommand command = connection.CreateCommand(); command.Transaction = sqlTran; try { command.CommandText = "INSERT INTO Production.ScrapReason(Name) VALUES( Wrong size )"; command.ExecuteNonQuery(); command.CommandText = "INSERT INTO Production.ScrapReason(Name) VALUES( Wrong color )"; command.ExecuteNonQuery(); // コミット sqlTran.Commit(); Console.WriteLine("Both records were written to database."); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine("Neither record was written to database."); // ロールバック sqlTran.Rollback(); } }
https://w.atwiki.jp/lyokun/pages/49.html
IDENTITY値の変更 以下のSQLコマンドを実行 DBCC CHECKIDENT ( Table名 , RESEED, int) 第一引数はテーブル名 第二引数は変更する場合はRESEED、しない場合はNORESEED 第三引数は設定するIDの数値 この数値+1が次のIDENTITYの値になる DBCC CHECKIDENT (Transact-SQL)http //msdn.microsoft.com/ja-jp/library/ms176057.aspx IDENTITYを無視して数値を入れる 以下のSQLコマンドを実行 SET IDENTITY_INSERT Table名 ON; この後にINSERT文を実行する。同じセッション内で実行しないとダメなので注意。 なお、同じセッションでONに出来るのは、1つのテーブルのみなので、複数のテーブルを操作するなら終了後に SET IDENTITY_INSERT Table名 OFF; を実行しませう。 これを使って、IDENTITY値が10のテーブルに20の値を入れると、次は21になります。 SET IDENTITY_INSERT (Transact-SQL)http //msdn.microsoft.com/ja-jp/library/ms188059.aspx
https://w.atwiki.jp/syusei/pages/16.html
Transactionサンプル applicationContext.xml beans bean id="myAction" class="com.app.TestAction" property name="jdbcTemplate ref bean="jdbcTemplate"/ /property /bean !-- jdbcTemplateの定義 -- bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate" property name="dataSource" ref local="dataSource"/ /property /bean !-- コネクションプーリングの定義 -- bean id="dataSource" class="org.enhydra.jdbc.pool.StandardXAPoolDataSource" destroy-method="shutdown" property name="dataSource" ref bean="xaDataSource"/ /property /bean !-- XAデータソース -- bean id="xaDataSource" class="org.enhydra.jdbc.standard.StandardXADataSource" destroy-method="shutdown" property name="transactionManager" ref bean="jotm"/ /property property name="driverName" value org.postgresql.Driver /value /property property name="url" value jdbc postgresql //host port/db?user=xxx amp;password=xxx /value /property /bean !-- JOTM -- bean id="jotm" class="org.springframework.transaction.jta.JotmFactoryBean"/ !-- SpringのUserTransaction -- bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager" property name="userTransaction" ref bean="jotm"/ /property /bean !-- Base DAO -- bean id="sampledb_dao" class="com.app.SampleDbDAO" property name="jdbcTemplate" ref bean="jdbcTemplate"/ /property /bean /beans Java Source // DAO final BaseDAO dao = (BaseDAO)wac.getBean("sampledb_dao"); // プログラミングによるトランザクション制御 PlatformTransactionManager txManager = (PlatformTransactionManager)wac.getBean("transactionManager"); // TransactionTemplateを使用する TransactionTemplate txTemplate = new TransactionTemplate(txManager); txTemplate.execute(new TransactionCallbackWithoutResult() { @Override protected void doInTransactionWithoutResult(TransactionStatus status) { dao.insertData("hoge1", "Yaaaahooooo!!!"); dao.insertData("hoge2", "Hyaaaaaaaaa!!!"); // rollback status.setRollbackOnly(); } }); /* // トランザクションの属性設定 DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); // トランザクションの開始 TransactionStatus status = txManager.getTransaction(def); // DAO呼び出し(更新) dao.insertData("hoge", "Really?"); dao.insertData("hoge2", "Happy!"); // ロールバック txManager.rollback(status); */