How to determine present database server name - sybase ase - sap-ase

I need to determine present databse server name where i am running my sql so that i can perform some certain steps depending upon the environment.
Anybody know how to do this ?

SELECT ##servername
Why? Because ##servername is a global variable and returns the name of the SAP ASE server.

SELECT ASEHostName()
on the ASE Instance will give you the Physical Machine Name , while
SELECT ##SERVERNAME
will give you the Database Server name that you would give when you setup ASE instance during installation.
-- In 'thoughts'...

the ASE database server name can be found in:
1) in interfaces file (UNIX) or using DSEDIT in Windows
2) running select * from master..sysservers

Related

SharePoint 2010-"Cannot connect to the configuration database"

I have TFS 2012 which integrated with SharePoint service, recently I duplicated the same machine for testing, and modified some parameters on the testing machine to avoid conflict due to they are in the same networking. They works well.
Today the production server's SharePoint site prompt "Cannot connect to the configuration database", but team foundation service works well, I doubt that something in the testing server cause this, and I shutdown testing server, the issue still exists.
Before I have experience for this issue, most of them are related with SQL server instance configuration like this "https://mikessharepoint.wordpress.com/2011/11/22/cannot-connect-to-the-configuration-database-error-of-central-administration/" or some authentications issue in the IIS application pool.
and here is the error event from event viewer:
"
Unknown SQL Exception 53 occurred. Additional error information from SQL Server is included below.
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
"
I doubt that something (probably SQL server instance name) on production server change to testing servers by some action, but I don't know where and how.
And I doubt that the new server cause the error, the reason is I find something incorrect in wss_config database of production server, the "ServerName" filed in table TimerJobHistory, some value are new server, some value are old server. But even I update all the value to old server and restarted the production server, it does not work.
I check all things I can googled, but nothing works, is there anybody could provide any help on this, appreciate for any kindly help.
Finally, I find the root reason, there is a table named "Objects" in the "Wss_config" DB, I find the new testing server name in "Name" filed, so I update the value to old server name-->Restarted IIS and SharePoint service (not sure if required)-->Bingo!
But I still don't know why the new server cause this error, so I have not power on the new server for now. Will update if any new detection.
Thanks all for your kindly help.

Excel VBA Userform to SQLOLEDB Connection works Locally but not remotely - Run-time error '-2147467259 (80004005)': [DBNETLIB]

It's been a week of research now and I am still unable to fix this problem.
I have created an Excel VBA User form that inserts data into an SQLOLEDB Connection (SQLEXPRESS 2017) when a CommandButton (Called "Save") is clicked. Locally (localhost) it works like a charm. All of the data from the columns gets inserted into the SQL DB Table successfully. No errors whatsoever.
However, when any client attempts to perform the same action I get the Run-time error '-2147467259 (80004005)': [DBNETLIB](ConnectionOpen (connect()).]SQL Server does not exist or access denied.
This is what I have tried so far:
I have created a Login for the client in my SQL Server Management Studio.
I have granted Insert permissions to the client to the dbo.Table.
I have made sure "Allow Remote Connections to this Server" is checked in Connections in my server properties in SQL Server Management Studio.
I have added Inbound & Outbound Rules in my Windows Firewall to Open port 1433 in my Computer which is where the Server has been installed.
I have added Inbound & Outbound Rules in Windows Firewall to Open port 1433 in my client's Computer.
I have checked my ODBC Data Source Administrator (both 32 & 64-bit) and I found out I have SQL Server Native Client RDA 11.0 installed which my client does not have. I researched and it's no longer possible to install this version. I also found out about SQL Server Compact 3.5 which supposedly comes with a replacement to RDA called Synchronization Services for ADO.NET. I installed both 32 & 64-bit versions in both my computer and my clients.
I have also tried establishing a Remote Desktop connection with my own login info but when I test my user form or run my Tester. UDL to attempt to connect to this server I get the same error message.
This is the string I'm using to establish this connection:
conn.Open "Provider=SQLOLEDB;Data Source=PCNAME\SQLEXPRESS;Initial Catalog=DATABASENAME;Integrated Security=SSPI;Trusted_Connection=Yes"
conn.Execute "INSERT INTO dbo.TABLENAME (COLUMNNAME, COLUMNNAME2) values ('" & sColumnVariable & "', '" & sColumnVariable2 & "')"
My question will be:
How do I manage to allow clients to successfully insert into this SQL Database/Table?
Where does the problem lie?
Does it lie within my Computers Settings?
Does it lie within my Clients Computers Settings?
Does it lie within my SQL Server Management Studio (maybe wrong/missing permissions)?
I appreciate your help in advance!
Regards, Dave.
You have to use the IP address to connect, for example:
Data Source=101.101.101.101\SQLEXPRESS;
Open a DOS prompt on the machine where SQL Server Express is located and type ipconfig
Get IP address and use it in your connection string
LocalHost just refers you your own computer. So unless you have a SQL Express running on each of the client computers, it isn't going to work.
You need to use the proper computer name or an IP address.
Is SQL Express running on a Windows Server?
I'm pretty sure that this is a requirement if you want other computers to talk to your SQL Server Express database. It's fine to use to test locally, but you need to install SQL Server on an PC that is actually running Windows Server to be able to accept and route the connections properly. So while SQL Server Express if free, your going to have to pay for Windows Server if you don't already have one.
If not, I'd love to know to get around dealing with my IT department so I can get something done.
I was able to figure this out. It had to do with the IP. I used my Local Area Connection IP address ONLY, without \SQLEXPRESS along with a new user I created in SQL Server Management Studio in my connection string:
conn.Open "Provider=SQLOLEDB;Data Source=IPADDRESS;Initial Catalog=DATABASENAME;Integrated Security=SSPI;User ID=MySQLTest;password=myPassc0de;
I'm soooo happy.

sqlcmd not connecting to Azure database

I am trying to use the command below to access my database within Azure
sqlcmd -s tcp:DBNAME HERE.database.windows.net -U USERNAME -P PASSWORD
I get the error
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : Named Pipes
Provider: Could not open a connection to SQL Server [2]. . Sqlcmd:
Error: Microsoft ODBC Driver 13 for SQL Server : Login timeout
expired. Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : A
network-related or instance-specific error has occurred while
establishing a connection to SQL Server. Server is not found or not
accessible. Check if instance name is correct and if SQL Server is
configured to allow remote connections. For more information see SQL
Server Books Online..
Has anyone ever had this? I have downloaded the latest version of sqlcmd
I need to get a lot of data into my Azure database, but I am running out of options as the Import Data option in management studio cant cope. This was the first method I tried. After processing 70000 of 250000 rows it just goes to stopped with no error message, thats what then led me to try with BCP SQLCMD
Paul
Your command is incorrect. The 'S' should be capitalized and you should provide the server name, not the database name.
sqlcmd -S tcp:myServer.database.windows.net -d database -U username -P password
See the documentation page for the complete syntax of sqlcmd.
Please make a ping to the name of your Azure SQL Database server as shown below:
C:\> ping myserver.database.windows.net
The ping command should fail but it should return the current IP of your SQL Azure Database server. If it fails to return that IP, then you cannot access to Azure server due to a DNS resolution problem.
If the ping command returned the IP address successful, then try to telnet your SQL Azure Database server as shown below.
C:\> telnet myserver.database.windows.net 1433
If the telnet command fails make sure your computer firewall or network hardware is allowing traffic to the IP returned on the previous step and make sure TCP port 1433 is open. If your are trying this from a corporate network, please contact your network administrator with this requirements.
Please note that you may need to enable the telnet command via Control Panel -> Program and Features -> Turn on/off features.
I just want to point out that BCP and sqlcmd are two different tools.
BCP is the bulk copy command. The later is the command line tool for querying.
If you are getting a named pipes issue, you might not have the client and/or server libraries configured.
Please go to SQL Server Configuration manager to check the settings.
By default, Azure SQL database is using TCP and you do not need to tell it on the command line.
In the image above, I am connecting to a Azure SQL database using the correct switches from books on line. Querying the sys.tables catalog returns the information that I expect. Two tables with different names. One duplicated named table under different schemas.
The BCP command will work the same way. You might even want to try a format file.
I want to clarify your statement that importing is taking a long time. Please remember that Azure SQL database is platform as a service. The database tiers are set at predetermined DTU's. That means stuffing the server with a lot of data will result in a throttled server at MAX DTU's.
I would look at the portal and see if that is your situation.
In short, sqlcmd, bcp and the import/export wizard are perfect tools for data loads a lot larger than the numbers you are talking about. Just remember, syntax is key to any successful program!

Connection specific DNS suffix has been changed

I have two azure hosted Virtual Machines one containing a TIBCO installation and the other containing an Oracle database. In the TNSNAME.ORA file and the LISTENER.ORA the value is as follows:
HOST = servername.servername.f10.internal.cloudapp.net
This was obtained from ipconfig /all at the time of creation but this now seems to have changed and the connection specific DNS value is now set to reddog.microsoft.com with the hostname being set to servername and primary dns suffix being set to company.local
We have not made any changes to this environment, is it possible that this has been changed due to some sort of redeployment by microsoft?
Could you change it back manually?
Then please try to run a tool named Process Monitor to check if any process changes these settings.
Just specify the path of these settings, any operation involving these paths will be logged. (Please remember check the option "Drop Filtered Events", otherwise, there will be too many events logged.)
In case you may need, here is the path of connection specific DNS suffix:
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}\Domain

How to connect to Sybase Server/Database without port number using DSN or RapidSQL? Or how to find port number?

I have Some Sybase Server/Databases. I know 1. Server Name 2. Database Name 3. Username 4. Password. Using this I can connect using ISQL but while using RapidSQL it asks for port. I have existing application which uses DSN, while creating DSN also it asks for port. I am looking for 2 possiblies using RapidSQL/Creating DSN without port or How to find port mumber?
I do not have SQL.ini file.
Try this:
Go to start-> RUN -> type dsedit. There will be a mneu "Select
Directory Services"
Click ok on InterfacesDriver.
Highlight your server name on the left pane.
You will see its IP/Hostname and Port number on the right pane.
If isql works then the Sybase client must have the port number defined.
On Windows, I'd expect %SYBASE%\ini\sql.ini to contain a record for your server, and you'll see the port number.
(On Unix, $SYBASE/interfaces is the equivalent file.)
I don't know if it's possible but can RapidSql use a native Sybase connection? It sounds as if you're setting it up for ODBC?

Resources