aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/schema/postgresql.sql
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/test/schema/postgresql.sql')
-rw-r--r--activerecord/test/schema/postgresql.sql292
1 files changed, 292 insertions, 0 deletions
diff --git a/activerecord/test/schema/postgresql.sql b/activerecord/test/schema/postgresql.sql
new file mode 100644
index 0000000000..f2198f24e9
--- /dev/null
+++ b/activerecord/test/schema/postgresql.sql
@@ -0,0 +1,292 @@
+CREATE SEQUENCE public.accounts_id_seq START 100;
+
+CREATE TABLE accounts (
+ id integer primary key DEFAULT nextval('public.accounts_id_seq'),
+ firm_id integer,
+ credit_limit integer
+);
+
+CREATE TABLE funny_jokes (
+ id serial,
+ name character varying(50)
+);
+
+CREATE SEQUENCE companies_nonstd_seq START 101;
+
+CREATE TABLE companies (
+ id integer primary key DEFAULT nextval('companies_nonstd_seq'),
+ "type" character varying(50),
+ "ruby_type" character varying(50),
+ firm_id integer,
+ name character varying(50),
+ client_of integer,
+ rating integer default 1
+);
+
+CREATE TABLE developers_projects (
+ developer_id integer NOT NULL,
+ project_id integer NOT NULL,
+ joined_on date,
+ access_level integer default 1
+);
+
+CREATE TABLE developers (
+ id serial primary key,
+ name character varying(100),
+ salary integer DEFAULT 70000,
+ created_at timestamp,
+ updated_at timestamp
+);
+SELECT setval('developers_id_seq', 100);
+
+CREATE TABLE projects (
+ id serial primary key,
+ name character varying(100),
+ type varchar(255)
+);
+SELECT setval('projects_id_seq', 100);
+
+CREATE TABLE topics (
+ id serial primary key,
+ title character varying(255),
+ author_name character varying(255),
+ author_email_address character varying(255),
+ written_on timestamp without time zone,
+ bonus_time time,
+ last_read date,
+ content text,
+ approved boolean default true,
+ replies_count integer default 0,
+ parent_id integer,
+ "type" character varying(50)
+);
+SELECT setval('topics_id_seq', 100);
+
+CREATE TABLE customers (
+ id serial primary key,
+ name character varying,
+ balance integer default 0,
+ address_street character varying,
+ address_city character varying,
+ address_country character varying,
+ gps_location character varying
+);
+SELECT setval('customers_id_seq', 100);
+
+CREATE TABLE orders (
+ id serial primary key,
+ name character varying,
+ billing_customer_id integer,
+ shipping_customer_id integer
+);
+SELECT setval('orders_id_seq', 100);
+
+CREATE TABLE movies (
+ movieid serial primary key,
+ name text
+);
+
+CREATE TABLE subscribers (
+ nick text primary key NOT NULL,
+ name text
+);
+
+CREATE TABLE booleantests (
+ id serial primary key,
+ value boolean
+);
+
+CREATE TABLE defaults (
+ id serial primary key,
+ modified_date date default CURRENT_DATE,
+ modified_date_function date default now(),
+ fixed_date date default '2004-01-01',
+ modified_time timestamp default CURRENT_TIMESTAMP,
+ modified_time_function timestamp default now(),
+ fixed_time timestamp default '2004-01-01 00:00:00.000000-00',
+ char1 char(1) default 'Y',
+ char2 character varying(50) default 'a varchar field',
+ char3 text default 'a text field',
+ positive_integer integer default 1,
+ negative_integer integer default -1,
+ decimal_number decimal(3,2) default 2.78,
+ multiline_default text DEFAULT E'--- []\n\n'::text
+);
+
+CREATE TABLE auto_id_tests (
+ auto_id serial primary key,
+ value integer
+);
+
+CREATE TABLE entrants (
+ id serial primary key,
+ name text not null,
+ course_id integer not null
+);
+
+CREATE TABLE colnametests (
+ id serial primary key,
+ "references" integer NOT NULL
+);
+
+CREATE TABLE mixins (
+ id serial primary key,
+ parent_id integer,
+ type character varying,
+ pos integer,
+ lft integer,
+ rgt integer,
+ root_id integer,
+ created_at timestamp,
+ updated_at timestamp
+);
+
+CREATE TABLE people (
+ id serial primary key,
+ first_name text,
+ lock_version integer default 0
+);
+
+CREATE TABLE readers (
+ id serial primary key,
+ post_id integer NOT NULL,
+ person_id integer NOT NULL
+);
+
+CREATE TABLE binaries (
+ id serial primary key,
+ data bytea
+);
+
+CREATE TABLE computers (
+ id serial primary key,
+ developer integer NOT NULL,
+ "extendedWarranty" integer NOT NULL
+);
+
+CREATE TABLE posts (
+ id serial primary key,
+ author_id integer,
+ title varchar(255),
+ type varchar(255),
+ body text
+);
+
+CREATE TABLE comments (
+ id serial primary key,
+ post_id integer,
+ type varchar(255),
+ body text
+);
+
+CREATE TABLE authors (
+ id serial primary key,
+ name varchar(255) default NULL
+);
+
+CREATE TABLE tasks (
+ id serial primary key,
+ starting timestamp,
+ ending timestamp
+);
+
+CREATE TABLE categories (
+ id serial primary key,
+ name varchar(255),
+ type varchar(255)
+);
+
+CREATE TABLE categories_posts (
+ category_id integer NOT NULL,
+ post_id integer NOT NULL
+);
+
+CREATE TABLE fk_test_has_pk (
+ id INTEGER NOT NULL PRIMARY KEY
+);
+
+CREATE TABLE fk_test_has_fk (
+ id INTEGER NOT NULL PRIMARY KEY,
+ fk_id INTEGER NOT NULL REFERENCES fk_test_has_fk(id)
+);
+
+CREATE TABLE geometrics (
+ id serial primary key,
+ a_point point,
+ -- a_line line, (the line type is currently not implemented in postgresql)
+ a_line_segment lseg,
+ a_box box,
+ a_path path,
+ a_polygon polygon,
+ a_circle circle
+);
+
+CREATE TABLE keyboards (
+ key_number serial primary key,
+ "name" character varying(50)
+);
+
+--Altered lock_version column name.
+CREATE TABLE legacy_things (
+ id serial primary key,
+ tps_report_number integer,
+ version integer default 0
+);
+
+CREATE TABLE numeric_data (
+ id serial primary key,
+ bank_balance decimal(10,2),
+ big_bank_balance decimal(15,2),
+ world_population decimal(10),
+ my_house_population decimal(2),
+ decimal_number_with_default decimal(3,2) default 2.78
+);
+
+CREATE TABLE mixed_case_monkeys (
+ "monkeyID" INTEGER PRIMARY KEY,
+ "fleaCount" INTEGER
+);
+
+CREATE TABLE postgresql_arrays (
+ id SERIAL PRIMARY KEY,
+ commission_by_quarter INTEGER[],
+ nicknames TEXT[]
+);
+
+CREATE TABLE postgresql_moneys (
+ id SERIAL PRIMARY KEY,
+ wealth MONEY
+);
+
+CREATE TABLE postgresql_numbers (
+ id SERIAL PRIMARY KEY,
+ single REAL,
+ double DOUBLE PRECISION
+);
+
+CREATE TABLE postgresql_times (
+ id SERIAL PRIMARY KEY,
+ time_interval INTERVAL
+);
+
+CREATE TABLE postgresql_network_addresses (
+ id SERIAL PRIMARY KEY,
+ cidr_address CIDR,
+ inet_address INET,
+ mac_address MACADDR
+);
+
+CREATE TABLE postgresql_bit_strings (
+ id SERIAL PRIMARY KEY,
+ bit_string BIT(8),
+ bit_string_varying BIT VARYING(8)
+);
+
+CREATE TABLE postgresql_oids (
+ id SERIAL PRIMARY KEY,
+ obj_id OID
+);
+
+CREATE TABLE minimalistics (
+ id serial primary key
+);