-5
可以在具有2000列以上的oracle中創建表格。列名應該是任何東西,類型也應該是任何東西。我不知道如何寫這個在oracle中創建2000列的表格
可以在具有2000列以上的oracle中創建表格。列名應該是任何東西,類型也應該是任何東西。我不知道如何寫這個在oracle中創建2000列的表格
不,這是不可能的。 Oracle有一個limit of 1000 columns per table。
爲什麼要首先創建一個包含2000列的表?這將強烈暗示你的模式嚴重需要一些正常化。如果您可以解釋您正在嘗試解決的業務問題,那麼我們幾乎可以肯定會提出一個更合適的解決方案。
如果你是真正的決定違反適當正常化,你想在一個循環中產生的列,你可以不喜歡
DECLARE
l_sql_stmt varchar2(1000);
BEGIN
l_sql_stmt := 'CREATE TABLE violation_of_normalization(col1 number)';
EXECUTE IMMEDIATE l_sql_stmt;
FOR i IN 2 .. 900
LOOP
l_sql_stmt := 'ALTER TABLE violation_of_normalization ADD(col' || i || ' number)';
EXECUTE IMMEDIATE l_sql_stmt;
END LOOP;
END;
這將是一個非常糟糕的主意,做這樣的事情,但它是當然可能。
atleast給我一個1000列的例子only.is有任何方式來運行循環,並創建列 –
@DeepakKumar你不明白嗎?你甚至不能寫代碼。正如賈斯汀所說,你的設計有些不妥。 –
@DeepakKumar而不是告訴你如何去做你不能做的事情,爲什麼你不要求對你的設計進行評論? – swasheck