Menu

DB ERROR:-1 at Installation

Help
ZS29
2010-04-29
2013-05-30
  • ZS29

    ZS29 - 2010-04-29

    Hello,
    so i have some little problems to start PhpGedView
    When I start the install.php and the system wants to create the tables I get some failures:

      ERROR:-1 DB Error: unknown error
    SQL:CREATE TABLE pgv_sources ( s_id VARCHAR(20) NOT NULL, s_file INTEGER NULL, s_name VARCHAR(255) NULL, s_gedcom TEXT NULL, s_dbid VARCHAR(1) NULL, PRIMARY KEY (s_id, s_file))

    ERROR:-1 DB Error: unknown error
    SQL:CREATE INDEX pgv_sour_id ON pgv_sources (s_id )

    ERROR:-1 DB Error: unknown error
    SQL:CREATE INDEX pgv_sour_name ON pgv_sources (s_name)

    ERROR:-1 DB Error: unknown error
    SQL:CREATE INDEX pgv_sour_file ON pgv_sources (s_file)

    ERROR:-1 DB Error: unknown error
    SQL:CREATE INDEX pgv_sour_dbid ON pgv_sources (s_dbid)

    When I start MSSQLExpress Studio, I see all tables but not the pgv_sources table.
    Later I tried to import my GEDCOM  File, but then I got this error:
    ERROR:-18 DB Error: no such table

    SQL:SELECT 'INDI' AS type, COUNT(*) AS num FROM pgv_individuals WHERE i_file=1 UNION ALL SELECT 'FAM' AS type, COUNT(*) AS num FROM pgv_families WHERE f_file=1 UNION ALL SELECT 'NOTE' AS type, COUNT(*) AS num FROM pgv_other WHERE o_file=1 UNION ALL SELECT 'SOUR' AS type, COUNT(*) AS num FROM pgv_sources WHERE s_file=1 UNION ALL SELECT 'OBJE' AS type, COUNT(*) AS num FROM pgv_media WHERE m_gedfile=1 UNION ALL SELECT o_type AS type, COUNT(*) as num FROM pgv_other WHERE o_file=1 GROUP BY type

    My system is a Windows Server 2003, IIS6 , PHP 5.2.13 , Microsoft SQL Express 2005 and PhpGedView 4.2.1

    So has somebody a idea to solve this Problem

     
  • Greg Roach

    Greg Roach - 2010-04-29

    Try editing includes/functions/functions_import.php and change line 1550 from

    " s_file   ".PGV_DB_COL_FILE."      NULL,".

    to

    " s_file   ".PGV_DB_COL_FILE."      NOT NULL,".

     
  • ZS29

    ZS29 - 2010-04-29

    Yes, this works. Thanks a lot.
    The first failure is gone.

    But when i want to Import my GedCom file i get this error
    ERROR:-19 DB Error: no such field
    SQL:SELECT 'INDI' AS type, COUNT(*) AS num FROM pgv_individuals WHERE i_file=1 UNION ALL SELECT 'FAM' AS type, COUNT(*) AS num FROM pgv_families WHERE f_file=1 UNION ALL SELECT 'NOTE' AS type, COUNT(*) AS num FROM pgv_other WHERE o_file=1 UNION ALL SELECT 'SOUR' AS type, COUNT(*) AS num FROM pgv_sources WHERE s_file=1 UNION ALL SELECT 'OBJE' AS type, COUNT(*) AS num FROM pgv_media WHERE m_gedfile=1 UNION ALL SELECT o_type AS type, COUNT(*) as num FROM pgv_other WHERE o_file=1 GROUP BY type

    So I delete the database and recreate them, but the failure stay.

     
  • Greg Roach

    Greg Roach - 2010-04-29

    I've never heard of "Microsoft SQL Express" before (and I'm having to use google-translate to read the error messages), but I'm guessing that SQL Express uses "TYPE" as a reserved word.

    Try this.

    In autocomplete.php, includes/classes/class_stats.php and includes/functions/functions_db.php do a search and replace of

    AS type

    with

    AS 'type'

     
  • ZS29

    ZS29 - 2010-04-29

    Oh sorry, the next failure  I will post the messages in english.

    And the system is "Microsoft SQL Server 2005 Express Edition". So I hope it doesn't care???

    I did the changes to the three files, but the failure stays. -> Invalid Column name

     
  • ZS29

    ZS29 - 2010-04-29

    I should copy the hole failure message
    so this appears too

    Fatal error: Call to undefined method DB_Error::fetchRow() in C:\PhpGedView\includes\functions\functions_db.php on line 948

     
  • Greg Roach

    Greg Roach - 2010-04-29

    Is there a reason you are using an old version of PGV (4.2.1) instead of the latest version (4.2.3) ?

     
  • ZS29

    ZS29 - 2010-04-29

    Yes, with PGV 4.2.3 I had more problems to connet to the database because I didn't get the PDO/MSSQL?? driver to work.
    So after a lots of many hours and Google i found the hint, to take PVG 4.2.1 when I want to connect with MS SQL.

    The first steps were easier, but this failure came.

    If you want, I can install PGV 4.2.3 again, when you can give me some hints for getting the PDO driver to work.

     
  • ZS29

    ZS29 - 2010-04-29

    So I testet 4.2.3 again….
    I copy all the files in a folder and when I open the install.php I get the following error

    ERROR 256: PDO/mysql is not installed.

    Fatal error: PDO/mysql is not installed. in C:\PHPGedView2\includes\classes\class_pgv_db.php on line 102

     
  • Greg Roach

    Greg Roach - 2010-04-29

    IIRC, 4.2.3 works with (some versions of) MS SQL Server - someone tested it for us last year.

    To install PDO, you normally just need to have php_pdo.dll and php_pdo_mssql.dll installed in your PHP extensions folder, and load them with an "extensions=XXX.dll" line in your php.ini file.

     
  • ZS29

    ZS29 - 2010-04-30

    I solved the problem with the pdo driver.

    I forgot to delete the ; in the line befor php_pdo.dll   

    But now I got a connection timeout when I want to connet to my databse. But the servername, suername and pw are correct.

    Fatal error: Maximum execution time of 60 seconds exceeded in C:\PHPGedView2\includes\classes\class_pgv_db.php on line 386

     
  • Greg Roach

    Greg Roach - 2010-04-30

    Try increasing "max_execution_time" in your php.ini file.

     
  • ZS29

    ZS29 - 2010-04-30

    I changed the value, restart IIS but the failure stays

    When I have time, I will restart the server….

     
  • ZS29

    ZS29 - 2010-04-30

    I changed the value from 300 to 600 and i reboot the server, but I get still the same failure

    Fatal error: Maximum execution time of 60 seconds exceeded in C:\PHPGedView2\includes\classes\class_pgv_db.php on line 393

    If i look into the phpinfo(), i see this value
    max_execution_time 600

    I'm a little bit confused

     
  • Greg Roach

    Greg Roach - 2010-04-30

    index/****_conf.php

    Find

    $TIME_LIMIT = "60";

    replace with

    $TIME_LIMIT = "600";

     
  • ZS29

    ZS29 - 2010-04-30

    Sorry, but I don't have or find this files in my directory……

    slowly I think my system is buggy…

     
  • Stephen Arnold

    Stephen Arnold - 2010-04-30

    ZS
    I doubt your system is buggy, but you are not following instructions or understand the program well enough to easily locate these items.

    When you set up PGV, you have a default INDEX folder/directory inside the PGV directory. It is recommended that you relocate this directory outside the webserver space for security reasons, but some do not do this.  Wherever your index (or similarly named folder) is, it contains a  YOURGEDCOMNAME_conf.php file. (for example, one of mine is Powell_conf.php)

    Open this file with a text editor and, near the bottom of the file is the $TIME_LIMIT = "XXXX"; parameter. Set yours to  600 to march your PHP setting.

    Hope this helps, Stephen

     
  • ZS29

    ZS29 - 2010-04-30

    Again I start from the beginning.

    I delete the database, my current PGV Directory and my IIS Entry for this directory

    - I create a new directory
    - copy the files from PhpGedView-all-4.2.3.zip in my directory
    -  move the index folder to another location on my server
    - change the permissions for the config.php, index dir, media dir and media/thumbs dir
    - create a new entry in my IIS for this directory
    - next i point my browser to this page
    - on the first site I see that there are no failures and warnings
    - Second page: I enter my login data for my MS SQL Server and push the button next
    And I got the same failure again

    So I look in my index directory and there are only two files "*.htaccess" and index.php
    So i looked in the zip file and also there are only these two files

    I think the ***_conf.php will be create during the first configuration process. But I had never succefully closed these process.

     
  • ZS29

    ZS29 - 2010-04-30

    I played a little bit with the options

    If I type a wrong servername I get the same error.
    If I type the correct servername I get the same error.
    If I type the correct name with the extension \SQLEXPRESS I get the following error:

    Your current databse configuration is incorrect.
    SQLSTATE General SQL Server error: Check messages from the SQL Server. (severity 5)

     
  • ZS29

    ZS29 - 2010-04-30

    I had a look in the Logs of my SQL Server.
    I found out that when I use the DBName\SQLEXPRESS the follwoing line will be added to the log

    Login succeeded for user 'sa'. Connection: non-trusted.

     
  • ZS29

    ZS29 - 2010-05-01

    I solved the problem.
    The error was the php installation

    The solution was to delete all dll files in the ext folder of my php folder.
    After that I changed my Installation of PHP over Add/Remove Progrmmas and added all avaible extensions.

    Now the failure is gone

    Thanks a lot to fiasharebest and okbigkid for their help…
    Have a nice weekend

     
  • Gerry Kroll

    Gerry Kroll - 2010-05-01

    Thank you for letting us know the cause of your problems/

     

Log in to post a comment.