Archive

Archive for the ‘Programming’ Category

Actual size of tables for tablespaces

November 5th, 2011 No comments

The size of a table can be found using oracle’s segment tables. Basically following code block returns a result of table size within related tablespaces in terms of MB and GB:

   SELECT tablespace_name,
          segment_name AS TABLENAME,
          trunc((sum(BYTES) / 1024 / 1024), 2) MB,
          trunc((sum(BYTES) / 1024 / 1024 / 1024), 2) GB
     FROM user_segments
 GROUP BY tablespace_name, segment_name

This way you may access only the tablespaces of logged in user

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: +8 (from 10 votes)

if exists syntax in sybase

April 20th, 2010 1 comment

Below shows the if exists usage with examples in sybase

If exists (select record)
begin
sql statement 1
sql statement 2
end
else
begin
sql statement 3
sql statement 4
end

Example

Scripts that include constructs like the following may produce errors if the table described in the script does not include the specified column:

if exists (select 1 from syscolumns
where id = object_id("some_table")
and name = "some_column")
begin
alter table some_table drop some_column
end

In this example, some_column must exist in some_table for the batch to succeed.

If some_column exists in some_table, the first time you run the batch, alter table drops the column. On subsequent executions, the batch does not compile.

Adaptive Server raises these errors while preprocessing this batch, which are similar to those that are raised when a normal select tries to access a nonexistent column. These errors are raised when you modify a table’s schema using clauses that require a data copy. If you add a null column, and use the above construct, Adaptive Server does not raise these errors.

To avoid such errors when you modify a table’s schema, include alter table in an execute immediate command:

if exists (select 1 from syscolumns
where id = object_id("some_table")
and name = "some_column")
begin
exec ("alter table some_table drop
some_column")
end

Because the execute immediate statement is run only if the if exists() function succeeds, Adaptive Server does not raise any errors when it compiles this script.

You must also use the execute immediate construct for other uses of alter table, for example, to change the locking scheme, and for any other cases when the command does not require data copy.

VN:F [1.9.22_1171]
Rating: 7.0/10 (6 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 4 votes)

A common error with GROUP BY Clause

April 16th, 2010 No comments

A common error with groups is to try to get information which cannot properly be put in a group. For example,


SELECT sales_rep, emp_lname, count( * )
FROM sales_order
KEY JOIN employee
GROUP BY sales_rep

gives the error

column ‘emp_lname’ cannot be used unless it is in a GROUP BY.

SQL does not realize that each of the rows for an employee with a given ID have the same value of emp_lname. An error is reported since SQL does not know which of the names to display.

However, the following is valid:


SELECT sales_rep, max( emp_lname ), count( * )
FROM sales_order
KEY JOIN employee
GROUP BY sales_rep

The max function chooses the maximum (last alphabetically) surname from the detail rows for each group. The surname is the same on every detail row within a group so the max is just a trick to bypass a limitation of SQL.

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
Categories: SQL, Tips Tags: , , , , , , ,

Cannot load mysqli extension. Please check your PHP configuration

August 25th, 2009 15 comments

Probably you are trying to access your phpmyadmin. You will get this error  if you have more then one “php.ini” file in your system. It is kinda conflicting. For instance i have wampserver2.0 and IIS7 together in my current system. I have activated IIS7 FastCgı method to use php on it. So it has one php.ini file at path of  “c:\wamp\….” and another one in “c:\Program Files\Php” . You can get a temporary solution if you rename your php.ini file which is in your “program files” path.

That is it.

VN:F [1.9.22_1171]
Rating: 8.4/10 (37 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 3 votes)
Categories: PHP, Programming, Tips Tags: , , ,

Gedit Modifications for PHP

May 17th, 2009 3 comments

Since i am coding with codeigniter framework on gedit, i was looking for snippets for codeigniter on gedit

download gedit snippet for codeigniter

By the way if you want to make your gedit more useful for programming surely you may add some third party plugins as many as you want or simply just active default plugins. Idea is that firstly download a plugin then extract its content to ‘~/.gnome2/gedit/plugins/’ directory. Once you have installed the plugin you want, you need to enable it via Edit>Preferences and then the Plugins Tab. Such as;

- Snippets
- Class Browser
- Bracket Completation
- Character Map
- Embedded Terminal
etc..

You can basicly find out third-party plugins by clicking on this link

VN:F [1.9.22_1171]
Rating: 6.0/10 (8 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
Categories: General, Linux, PHP, Programming Tags: , ,