Mysql table indexes

Post Reply
User avatar
vilian
Posts: 795
Joined: Wed Nov 09, 2005 2:17 am
Location: Brazil
Contact:

Mysql table indexes

Post by vilian »

Hi Guys,
How could I know the indexes of a mysql table has ?
Sds,
Vilian F. Arraes
vilian@vfatec.com.br
Belém-Pa-Brazil
User avatar
FranciscoA
Posts: 1964
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Mysql table indexes

Post by FranciscoA »

Try this way:

Code: Select all

oVer := oServer:Query("SHOW INDEX FROM " + cTable + ";")
Regards.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh1204-MySql-TMySql
User avatar
FranciscoA
Posts: 1964
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Mysql table indexes

Post by FranciscoA »

Otra manera:

Code: Select all

//Para una tabla
SELECT DISTINCT
    TABLE_NAME,
    INDEX_NAME
FROM INFORMATION_SCHEMA.STATISTICS 
WHERE TABLE_NAME = 'retalcal';

//Para todas las tablas de una BDD
SELECT DISTINCT
    TABLE_NAME,
    INDEX_NAME
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = 'fapsoftware';
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh1204-MySql-TMySql
User avatar
vilian
Posts: 795
Joined: Wed Nov 09, 2005 2:17 am
Location: Brazil
Contact:

Re: Mysql table indexes

Post by vilian »

Thank you ;)
Sds,
Vilian F. Arraes
vilian@vfatec.com.br
Belém-Pa-Brazil
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Mysql table indexes

Post by nageswaragunupudi »

vilian wrote:Hi Guys,
How could I know the indexes of a mysql table has ?

Code: Select all

aIndexes := oCn:ListIndexes( cTable )
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
vilian
Posts: 795
Joined: Wed Nov 09, 2005 2:17 am
Location: Brazil
Contact:

Re: Mysql table indexes

Post by vilian »

Thank you ;)
Sds,
Vilian F. Arraes
vilian@vfatec.com.br
Belém-Pa-Brazil
Horizon
Posts: 997
Joined: Fri May 23, 2008 1:33 pm

Re: Mysql table indexes

Post by Horizon »

nageswaragunupudi wrote:
vilian wrote:Hi Guys,
How could I know the indexes of a mysql table has ?

Code: Select all

aIndexes := oCn:ListIndexes( cTable )
 
Hi Mr. Rao,
Is there any function to create index?
Regards,

Hakan ONEMLI

Harbour & VS 2019 & FWH 20.12
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Mysql table indexes

Post by nageswaragunupudi »

Is there any function to create index?
No.

Not exactly but this function automatically creates a primary key index:

Code: Select all

METHOD MakePrimaryKey( cTable, cCol )
Regards

G. N. Rao.
Hyderabad, India
Horizon
Posts: 997
Joined: Fri May 23, 2008 1:33 pm

Re: Mysql table indexes

Post by Horizon »

nageswaragunupudi wrote:
Is there any function to create index?
No.

Not exactly but this function automatically creates a primary key index:

Code: Select all

METHOD MakePrimaryKey( cTable, cCol )
Hi Mr. Rao,

Do you mean we don't need index other than a primary key? Wouldn't it be better to index the connection variables of detail tables and master table?
Regards,

Hakan ONEMLI

Harbour & VS 2019 & FWH 20.12
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Mysql table indexes

Post by nageswaragunupudi »

Do you mean we don't need index other than a primary key?
a) We need to create unique indexes for enforcing unique constraint for a column or set of columns. If we want to create unique constraint to a single column, we can either create while creating the table or later create a unique index by:

Code: Select all

oCn:Execute( "CREATE UNIQUE INDEX cust_name_uidx ON cust( name )" )
 
b) In large tables we may need to create indexes on some columns to optimize queries. It is normally better to keep such indexes to minimum or none. Note: Optimizing queries is a subject by itself.

Code: Select all

oCn:Execute( "CREATE INDEX ON employee___idx ON employee( _ )" )
 
Wouldn't it be better to index the connection variables of detail tables and master table?
We do it by creating foreign key relationships. Our library provides special features to deal with parent-child relationships and you can find samples in the samples folder as well in the forum if you search.
Regards

G. N. Rao.
Hyderabad, India
Post Reply