Sponsored Content
Full Discussion: Learning SQL - suggestions
Top Forums Programming Learning SQL - suggestions Post 302478747 by msarro on Wednesday 8th of December 2010 09:21:30 PM
Old 12-08-2010
Check out SQLCourse - Interactive Online SQL Training for Beginners
No downloads, completely online. Play here, then when you want to start doing more stuff download a DBS or sqllite as suggested above.
Hope that helps.
 

10 More Discussions You Might Find Interesting

1. Filesystems, Disks and Memory

Backup Suggestions.

Hi all, Have two SCO 5.0.5 systems and one Slackware(joy?) system. I've been asked to backup all three systems onto a newly acquired AIT Tape drive that we've installed on one of the SCO boxes. Using the existing cpio backup script on the one SCO works a treat and is really fast (which is... (2 Replies)
Discussion started by: Cameron
2 Replies

2. UNIX for Advanced & Expert Users

Looking for Suggestions...

We run WebSphere and by default it wants to install everything under /usr. While I can understand the default (everyone has a /usr) I would like to move this over to a dedicated volume group called apps and then setup my lv's and fs's here. Our WebSphere Admin doesn't like this because apparently... (1 Reply)
Discussion started by: scottsl
1 Replies

3. Shell Programming and Scripting

Calling SQL LDR and SQL plus scripts in a shell script

Hi- I am trying to achieve the following in a script so I can schedule it on a cron job. I am fairly new to the unix environment... I have written a shell script that reads a flat file and loads the data into an Oracle table (Table1) via SQLLDR. This Works fine. Then, I run a nested insert... (5 Replies)
Discussion started by: rajagavini
5 Replies

4. UNIX for Dummies Questions & Answers

Execute PL/SQL function from Unix script (.sql file)

Hi guys, I am new on here, I have a function in oracle that returns a specific value: create or replace PACKAGE BODY "CTC_ASDGET_SCHED" AS FUNCTION FN_ASDSCHEDULE_GET RETURN VARCHAR2 AS BEGIN DECLARE ASDSchedule varchar2(6); ASDComplete... (1 Reply)
Discussion started by: reptile
1 Replies

5. UNIX for Advanced & Expert Users

Need suggestions.......

Hello there....i am a final year comp science student.......i am thinking of doing my project on unix platform......which one do u suggest?thanx in advance... (3 Replies)
Discussion started by: theprasad1990
3 Replies

6. Shell Programming and Scripting

Execute multiple SQL scripts from single SQL Plus connection

Hi! I would like to do a single connection to sqlplus and execute some querys. Actually I do for every query one connection to database i.e echo 'select STATUS from v$instance; exit' > $SQL_FILE sqlplus user/pass@sid @$SQL_FILE > $SELECT_RESULT echo 'select VERSION from v$instance;... (6 Replies)
Discussion started by: guif
6 Replies

7. AIX

AIX learning path: suggestions

Hello, Am fresher to AIX domain but trained in RHEL 5. I want to go for AIX certifications in future and very much eager to learn AIX from basics.Kindly provide me the guides or the links or the books for study. What are the recent IBM AIX certifications in the market as of today and their... (3 Replies)
Discussion started by: zaheerbk
3 Replies

8. UNIX for Advanced & Expert Users

Call parallel sql scripts from shell and return status when both sql are done

Hi Experts: I have a shell script that's kicked off by cron. Inside this shell script, I need to kick off two or more oracle sql scripts to process different groups of tables. And when both sql scripts are done, I will continue in the shell script to do other things like checking processing... (3 Replies)
Discussion started by: huasheng8
3 Replies

9. UNIX for Dummies Questions & Answers

Suggestions for the interview

Hi guys, i'm undergoing a traning in solaris administration and i request if any one have an idea on the interview questions on solaris. thank you. (3 Replies)
Discussion started by: 038karthik
3 Replies

10. Shell Programming and Scripting

Storing multiple sql queries output into variable by running sql command only once

Hi All, I want to run multiple sql queries and store the data in variable but i want to use sql command only once. Is there a way without running sql command twice and storing.Please advise. Eg : Select 'Query 1 output' from dual; Select 'Query 2 output' from dual; I want to... (3 Replies)
Discussion started by: Rokkesh
3 Replies
Parse::Dia::SQL::Output::SQLite3(3pm)			User Contributed Perl Documentation		     Parse::Dia::SQL::Output::SQLite3(3pm)

NAME
Parse::Dia::SQL::Output::SQLite3 - Create SQL for SQLite version 3. SYNOPSIS
use Parse::Dia::SQL; my $dia = Parse::Dia::SQL->new(file => 'foo.dia', db => 'sqlite3'); print $dia->get_sql(); DESCRIPTION
This sub-class creates SQL for the SQLite database version 3. new The constructor. Object names in SQLite have no inherent limit. 60 has been arbitrarily chosen. _get_create_table_sql Generate create table statement for a single table using SQLite syntax: Includes class comments before the table definition. Includes autoupdate triggers based on the class comment. autoupdate triggers If the class comment includes a line like: <autoupdate:foo/> Then an 'after update' trigger is generated for this table which executes the statement foo for the updated row. Examples of use include tracking record modification dates ("<autoupdate:dtModified=datetime('now')/">) or deriving a value from another field ("<autoupdate:sSoundex=soundex(sName)/">) get_schema_drop Generate drop table statments for all tables using SQLite syntax: drop table {foo} if exists get_view_drop Generate drop view statments for all tables using SQLite syntax: drop view {foo} if exists _get_fk_drop Drop foreign key enforcement triggers using SQLite syntax: drop trigger {foo} if exists The automatically generated foreign key enforcement triggers are: See "_get_create_association_sql" for more details. constraint_name_bi_tr constraint_name_bu_tr constraint_name_buparent_tr constraint_name_bdparent_tr _get_drop_index_sql drop index statement using SQLite syntax: drop index {foo} if exists get_permissions_create SQLite doesn't support permissions, so supress this output. get_permissions_drop SQLite doesn't support permissions, so supress this output. _get_create_association_sql Create the foreign key enforcement triggers using SQLite syntax: create trigger {fkname}[_bi_tr|_bu_tr|_bdparent_tr|_buparent_tr] Because SQLite doesn't natively enforce foreign key constraints (see <http://www.sqlite.org/omitted.html>), we use triggers to emulate this behaviour. The trigger names are the default contraint name (something like child_table_fk_child_fkcolumn) with suffixes described below. {constraint_name} is the name of the association, either specified or generated. {child_table} is the name of the dependent or child table. {child_fkcolumn} is the field in the dependent table that hold the foreign key. {parent_table} is the name of the parent table. {parent_key} is the key field of the parent table. Before insert - Dependent Table constraint_name_bi_tr Before insert on the child table require that the parent key exists. create trigger {constraint_name}_bi_tr before insert on {child_table} for each row begin select raise(abort, 'insert on table {child_table} violates foreign key constraint {constraint_name}') where new.{child_fkcolumn} is not null and (select {parent_key} from {parent_table} where {parent_key}=new.{child_fkcolumn}) is null; end; Before update - Dependent Table constraint_name_bu_tr Before update on the child table require that the parent key exists. create trigger {constraint_name}_bu_tr before update on {table_name} for each row begin select raise(abort, 'update on table {child_table} violates foreign key constraint {constraint_name}') where new.{child_fkcolumn} is not null and (select {parent_key} from {parent_table} where {parent_key}=new.{child_fkcolumn}) is null; end; Before update - Parent Table constraint_name_buparent_tr Before update on the primary key of the parent table ensure that there are no dependent child records. Note that cascading updates don't work. create trigger {constraint_name}_buparent_tr before update on {parent_table} for each row when new.{parent_key} <> old.{parent_key} begin select raise(abort, 'update on table {parent_table} violates foreign key constraint {constraint_name} on {child_table}') where (select {child_fkcolumn} from {child_table} where {child_fkcolumn}=old.{parent_key}) is not null; end; Before delete - Parent Table constraint_name_bdparent_tr The default behaviour can be modified through the contraint (in the multiplicity field) of the association. Default (On Delete Restrict) Before delete on the parent table ensure that there are no dependent child records. create trigger {constraint_name}_bdparent_tr before delete on {parent_table} for each row begin select raise(abort, 'delete on table {parent_table} violates foreign key constraint {constraint_name} on {child_table}') where (select {child_fkcolumn} from {child_table} where {child_fkcolumn}=old.{parent_key}) is not null; end; On Delete Cascade Before delete on the parent table delete all dependent child records. create trigger {constraint_name}_bdparent_tr before delete on {parent_table} for each row begin delete from {child_table} where {child_table}.{child_fkcolumn}=old.{parent_key}; end; On Delete Set Null Before delete on the parent table set the foreign key field(s) in all dependent child records to NULL. create trigger {constraint_name}_bdparent_tr before delete on {parent_table} for each row begin update {child_table} set {child_table}.{child_fkcolumn}=null where {child_table}.{child_fkcolumn}=old.{parent_key}; end; TODO
Things that might get added in future versions: Mandatory constraints The current foreign key triggers allow NULL in the child table. This might use a keyword in the multiplicity field (perhaps 'required') or could check the 'not null' state of the child fkcolumn. Views Views haven't been tested. They might already work, but who knows... Other stuff Bugs etc perl v5.14.2 2011-02-15 Parse::Dia::SQL::Output::SQLite3(3pm)
All times are GMT -4. The time now is 08:19 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy