• ベストアンサー

SQLServerでNULLを挿入したいです

SQLServerでINSERT文を書くとき、NULLを意図的に登録したいのですがどのようにすればよいのでしょうか? ''にするとブランクとして登録されてしまいます。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

null insert into t1(c1,c2,c3) values('a',1,null)

関連するQ&A

  • Date型にNULLをセットしたい VB2008+SQLServer2008

    よろしくお願いいたします。 VB2008Express+SQLServer2008Expressを勉強しております。 Date型にNULLをセットする方法についてお聞きします。 定義ではDate型で「NULLを許容」にしております。 http://oshiete1.goo.ne.jp/qa1047427.html?ans_count_asc=20 この質問を参考に、 INSERT INTO tbl_Main(dteDate) VALUES (DBNull.Value) このようにしてみましたが、 「不適切な構文があります」というエラーが起きます。 空文字「"''"」にすると「1900/01/01」がセットされてしまったり、 「vbTab」に変えてみたりとやってみましたが、うまく行きません。 お時間がありましたら、アドバイスよろしくお願いいたします。

  • 【SQLServer】IS NULLのパフォーマンス

    お世話になっております。SQLSERVER初心者です。 NULLを含む列COL1を検索条件に入れる場合、 パフォーマンスの観点から WHERE COL1 IS NULL とするのではなく WHERE ISNULL(COL1,'') = '' とするよう有識者から言われました。 そこで質問なのですが、 (1)IS NULL は基本的に上記のように変換したほうが早くなるのですか? (2)COL1にもしインデックスが設定されていたとしても、上記の場合だとどちらも効かないですよね? 詳しい方おしえてください。 よろしくおねがいします。

  • SQLServer7.0で、SELECT文で列を抽出する ※Nullと0の条件について

    SQLServer7.0で、SELECT文で列を抽出する際なんですが、 列A 列B --------- 1  Null 2  Null 3  1 ↑のテーブルから、列Aの1、2だけを抽出するSELECT文を SELECT * FROM XXX WHERE 列B <> 1 と作成したのですが、うまく動作しません(汗) データが一件も取れないのです。(列B:tinyint型、Null許容) テーブル内のデータをNull→0にして、同SELECT文で抽出すればうまくいったのですが。。 Nullデータを、<>XX という条件で取得することはできないんですかねえ・・・。 それとも、テーブルの設定か、条件の記述方法がまずいんでしょうか。 どなたか、ご存知あればアドバイスをお願いします。

  • SQLServerで更新ができない。

    環境  Windows NT SQLServer 7.0 SQLServerのクエリアナライザ等で参照(select文)は成功するのですが、 更新(update文やinsert文)を実行すると以下のエラーが発生します。 解決方法がわかる方いましたら教えてください。 サーバー : メッセージ 6、レベル 16、状態 1、行 4 指定された SQL Server が見つかりません。

  • null→数値にするには?

    何度も質問してすみません。 NULLが格納されているフィールドに 「0」や「1」といった値を入れる為には どういうINSERT INTO文をPHP内で記述すれば宜しいでしょうか? pg_field_is_nullを使ってみたのですが イマイチ値を変更する事ができません。 また、SQL文で「NOT NULL制約」という言葉があるのを知ったのですが、 ALTER TABLE文でテーブルを作る時に、 各フィールドにはnullではなく、「0」を最初から格納したい場合は どういった記述をすれば宜しいでしょうか? 宜しくお願い致します。

  • int型フィールドにnullを登録できない・・・

    > insert into tbl_tst values (001,'',21000,,22,4400,'3~4日','∞') とすると syntax error になってしまいます。 > insert into tbl_tst values (001,'',21000,'',22,4400,'3~4日','∞') とすると out of range になってしまいます。 > insert into tbl_tst values (001,'',21000,0,22,4400,'3~4日','∞') は通常に登録できます。 > insert into tbl_tst values (001,'',21000,'0',22,4400,'3~4日','∞') も通常に登録できます。 4カラム目のフィールドなのですが、show fields で見ても int(11) Null→YES  Default→NULLとなっております。 NULLを登録(何も値を入れない)したいのですが、 どうすればよいでしょうか。 ご存知の方いらっしゃいましたらご教示願います。 宜しくお願い致します。

    • ベストアンサー
    • MySQL
  • NULLの挿入の仕方が…?

    初心者です。 フォームからPHPでMySQLに値を挿入したいのですが、 NULLの挿入の仕方がわかりません。 一応、’’で空文字を登録できるようにはしているのですが、NULLとは別物になるんですよね? また、ネットで探してみたところ、\Nでいけると書いているところもあったような…しかし、\Nでは「N」が登録されてしまいます… 挿入方法を教えてください。お願いします。

    • ベストアンサー
    • MySQL
  • NULLの回避

    SQLserver2005においてCSVファイルをインポートしているのですがうまくいきません。形式としては・・・ 1111,"1",2006-01-24,11,1525 な感じのデータです。 SSISを使いやっているのですが、変換がうまくいっていないのか NULL値になってしまうところがあります。 1111,"1",null,11,1525   それが始末が悪いことに、流すごとにnullになったり, きちんと入っていたりと、原因が判りません。 どなたかお教えください。

  • SQLServer2000で。

    こんにちは。早速質問させて頂きます。 VB6.0からSQLServer 2000に、ADOで接続を行っています。 デ-タ更新時に、デ-タ単位でロックをかけたいのですが、どのように記述すればよいのか分かりません。 SELECT文だと、テ-ブル名の後ろに【WITH~】と記述するというのは分かったのですが、INSERT/UPDATE/DELETEの際はどのようにすればいいのでしょうか? もう一つ。 デ-タSELECT時に、項目にNULL値が入っていた場合、NULL以外の値で取得する方法はありますか?(Oracleにはあったような…) どなたか知識のある方、教えて下さい。 よろしくお願いします。

  • SQLのインサートでヌルを挿入できないというエラー

    SQLサーバーで、INSERT INTO・・・selectで抽出した列の値を入れたいのですが、主キーのところで下記のエラーが出ます。 テーブル ・・・の列 '・・・' に値 NULL を挿入できません。この列では NULL 値が許可されていません。INSERT は失敗します。 ステートメントは終了されました。 selectで抽出するテーブルの該当列を確認しても値はあるはずですが・・。 原因は何が考えられますか? お願いします・・・。