2017-10-23 17 views
1

oracleでsqlを使用してテーブルを作成しようとしています。しかし、このステートメントを使用すると、キーワードエラーが見つからないことがあります。しかし、それはw3school SQLのtryitエディタでうまく動作します。誰でもオラクルの問題の原因を理解するために私を助けてもらえますか?テーブル作成時にoracleにキーワードがありません

create table products (product_key number(4) not null primary key, product_name varchar(50) not null unique, price_reg double(1000,2) not null, price_spec double(1000,2) not null, sell_reg double(1000,2) not null, sell_spec double(1000,2) not null) 

すべてのご協力をよろしくお願いいたします。

+0

w3foolsは優れたリソースではない理由をもう一つの良い例。 –

答えて

2

Oracleには、倍精度データ型と数値データ型があります。あなたは2つを組み合わせています。ここでの「欠けているキーワード」は、doubleの後の単語「精度」です。

create table products (
product_key number(4) not null primary key, 
product_name varchar(50) not null unique, 
price_reg double precision not null, 
price_spec double precision not null, 
sell_reg double precision not null, 
sell_spec double precision not null) 

またはこの:あなたのいずれかがこれが欲しい

create table products (
product_key number(4) not null primary key, 
product_name varchar(50) not null unique, 
price_reg numeric(10,2) not null, 
price_spec numeric(10,2) not null, 
sell_reg numeric(10,2) not null, 
sell_spec numeric(10,2) not null) 

SQL Fiddle demo

はまた、私は10を使用(最大は38で、1000は数値型の有効な精度値ではないことに注意してください上記)。

+0

それは動作します。ありがとうございました。 :-) –

0

はすでにここ

は、テーブルのためのいくつかの有用な情報

  1. 特異名の列の
  2. 特異名テーブル用
  3. スキーマ名になっている指定された答え
    w3school使用のOracleドキュメントを使用しないようにしよう接頭辞(例:SchemeName.TableName)
  4. パスカルケース(別名アッパーラクテルケース)

create table Product ( product_key number(4) not null primary key, product_name varchar(50) not null unique, price_reg double precision not null, price_spec double precision not null, sell_reg double precision not null, sell_spec double precision not null)

関連する問題